{
 "cells": [
  {
   "cell_type": "markdown",
   "source": [
    "# GLM-4 analyzes massive amounts of data.\n",
    "\n",
    "**This tutorial is available in English and is attached below the Chinese explanation**\n",
    "\n",
    "在此代码中，我使用 GLM 的 Function Call 和 代码能力 对[人口城乡居民比例](urban-rural-population.csv) 进行简单的数据分析工作。你将能体验到\n",
    "\n",
    "1. 模型是如何对一个csv文件进行读取和数据分析。\n",
    "2. 模型和工具的交互方式以及模型不断改进的过程。\n",
    "\n",
    "In this code, I use GLM's Function Call and code capabilities to perform simple data analysis on [Population Urban-Rural Resident Ratio](urban-rural-population.csv). you will be able to experience\n",
    "\n",
    "1. How the model reads and analyzes data from a csv file.\n",
    "2. How models and tools interact and the process of continuous model improvement.\n",
    "\n",
    "\n"
   ],
   "metadata": {
    "collapsed": false
   },
   "id": "1b652cf6ff4e179b"
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "outputs": [],
   "source": [
    "import os\n",
    "from zhipuai import ZhipuAI\n",
    "import json\n",
    "\n",
    "os.environ[\"ZHIPUAI_API_KEY\"] = \"your api key\"\n",
    "client = ZhipuAI()"
   ],
   "metadata": {
    "collapsed": true,
    "ExecuteTime": {
     "end_time": "2024-02-06T08:08:01.037538Z",
     "start_time": "2024-02-06T08:08:00.844017Z"
    }
   },
   "id": "initial_id"
  },
  {
   "cell_type": "markdown",
   "source": [
    "设置好执行工具的函数，其中\n",
    "\n",
    "1. 工具 `execute_cleaned_code_from_string` 代码是为了将模型输出的 Python 代码执行。\n",
    "2. 工具 `extract_function_and_execute` 将模型的输出拆解并获得执行的代码。\n",
    "\n",
    "Set up the function to execute the tool, where\n",
    "1. The tool `execute_cleaned_code_from_string` code is to execute the Python code output by the model.\n",
    "2. The tool `extract_function_and_execute` disassembles the output of the model and obtains the executed code.\n",
    "\n"
   ],
   "metadata": {
    "collapsed": false
   },
   "id": "cd31daff0cd32409"
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "\n",
    "def execute_cleaned_code_from_string(code_string: str = \"\"):\n",
    "    import io\n",
    "    from contextlib import redirect_stdout\n",
    "\n",
    "    output_buffer = io.StringIO()\n",
    "    try:\n",
    "        code_object = compile(code_string, '<string>', 'exec')\n",
    "        with redirect_stdout(output_buffer):\n",
    "            exec(code_object)\n",
    "        return output_buffer.getvalue() if output_buffer.getvalue() else \"Code finished successfully!\"\n",
    "    except Exception as e:\n",
    "        error = \"traceback: An error occurred: \" + str(e)\n",
    "        print(error)\n",
    "        return error\n",
    "\n",
    "\n",
    "def extract_function_and_execute(llm_output, messages):\n",
    "    name = llm_output.choices[0].message.tool_calls[0].function.name\n",
    "    params = json.loads(llm_output.choices[0].message.tool_calls[0].function.arguments)\n",
    "    tool_call_id = llm_output.choices[0].message.tool_calls[0].id\n",
    "    function_to_call = globals().get(name)\n",
    "    if not function_to_call:\n",
    "        raise ValueError(f\"Function '{name}' not found\")\n",
    "    messages.append(\n",
    "        {\n",
    "            \"role\": \"tool\",\n",
    "            \"content\": str(function_to_call(**params)),\n",
    "            \"tool_call_id\": tool_call_id\n",
    "        }\n",
    "    )\n",
    "    return messages\n",
    "\n",
    "\n",
    "tools = [\n",
    "    {\n",
    "        \"type\": \"function\",\n",
    "        \"function\": {\n",
    "            \"name\": \"execute_cleaned_code_from_string\",\n",
    "            \"description\": \"python code execution tool\",\n",
    "            \"parameters\": {\n",
    "                \"type\": \"object\",\n",
    "                \"properties\": {\n",
    "                    \"code_string\": {\n",
    "                        \"type\": \"string\",\n",
    "                        \"description\": \"Python executable code\",\n",
    "                    },\n",
    "                },\n",
    "                \"required\": [\"code_string\"],\n",
    "            },\n",
    "        }\n",
    "    }\n",
    "]"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2024-02-06T08:09:16.103346Z",
     "start_time": "2024-02-06T08:09:15.513601Z"
    }
   },
   "id": "d277d0ee89081388"
  },
  {
   "cell_type": "markdown",
   "source": [
    "设置一个 系统提示词，作为模型的预定设置并提供已知信息，这样模型能更好的执行我们的指令。\n",
    "\n",
    "Set a system prompt word as a predetermined setting for the model and provide known information so that the model can better execute our instructions."
   ],
   "metadata": {
    "collapsed": false
   },
   "id": "61bca9c96a04fb2a"
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "outputs": [],
   "source": [
    "sys_prompt = \"\"\"\n",
    "You are a data analyst, you will have a code execution tool, you need to write a python script, the tool will execute your content and return the results, now please analyze my csv file.\n",
    "I will provide you with some information about the csv, which is as follows:\n",
    "{\n",
    "     info: Changes in the urban-rural population ratio in major regions of the world from 1500 to 2050. The csv contains five columns, namely\n",
    "     column info: Entity,Code,Year, Urban population (%) long-run with 2050 projections (OWID),Rural population (%) long-run with 2050 projections (OWID)\n",
    "     path : 'data/urban-rural-population.csv'\n",
    "}\n",
    "Each column has some data, which you need to read through python code.\n",
    "Now, please follow my requirements, write the code appropriately, and analyze my csv file.\n",
    "I will provide you with the code to execute the tool, you just need to write the code according to my requirements.\n",
    "All answers must be provided after querying the csv I provided. Your return must be executable python code and no other content.\n",
    "Thinking step by step, here's my request, let's get started:\n",
    "\"\"\""
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2024-02-06T08:09:17.763283Z",
     "start_time": "2024-02-06T08:09:17.758803Z"
    }
   },
   "id": "1337104304c7d23e"
  },
  {
   "cell_type": "markdown",
   "source": [
    "先做一个简单的尝试，在这里，我们绘制50年来美国城乡居民的比例的变化情况。\n",
    "\n",
    "First, make a simple attempt. Here, we plot the changes in the proportion of urban and rural residents in the United States over the past 50 years."
   ],
   "metadata": {
    "collapsed": false
   },
   "id": "39eb2bc91bcc3330"
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "outputs": [
    {
     "data": {
      "text/plain": "Completion(model='glm-4', created=1707206981, choices=[CompletionChoice(index=0, finish_reason='tool_calls', message=CompletionMessage(content=None, role='assistant', tool_calls=[CompletionMessageToolCall(id='call_8367733565668098891', function=Function(arguments='{\"code_string\":\"import pandas as pd\\\\nimport matplotlib.pyplot as plt\\\\n\\\\n# 读取CSV文件\\\\ncsv_path = \\\\\"data/urban-rural-population.csv\\\\\"\\\\ndata = pd.read_csv(csv_path)\\\\n\\\\n# 筛选美国的数据\\\\nus_data = data[data[\\\\\"Entity\\\\\"] == \\\\\"United States\\\\\"]\\\\n\\\\n# 提取年和人口比例数据\\\\nyears = us_data[\\\\\"Year\\\\\"].tolist()\\\\nurban_populations = us_data[\\\\\"Urban population (%) long-run with 2050 projections (OWID)\\\\\"].tolist()\\\\nrural_populations = us_data[\\\\\"Rural population (%) long-run with 2050 projections (OWID)\\\\\"].tolist()\\\\n\\\\n# 绘制图表\\\\nplt.figure(figsize=(10, 5))\\\\nplt.plot(years, urban_populations, label=\\\\\"Urban\\\\\")\\\\nplt.plot(years, rural_populations, label=\\\\\"Rural\\\\\")\\\\nplt.title(\\\\\"Urban and Rural Population Development in the United States\\\\\")\\\\nplt.xlabel(\\\\\"Year\\\\\")\\\\nplt.ylabel(\\\\\"Population (%)\\\\\")\\\\nplt.legend()\\\\nplt.show()\"}', name='execute_cleaned_code_from_string'), type='function')]))], request_id='8367733565668098891', id='8367733565668098891', usage=CompletionUsage(prompt_tokens=368, completion_tokens=239, total_tokens=607))"
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "question = \"Read csv and draw the distribution of urban and rural population development in the United States\"\n",
    "messages = [\n",
    "    {\n",
    "        \"role\": \"system\",\n",
    "        \"content\": sys_prompt\n",
    "    },\n",
    "    {\n",
    "        \"role\": \"user\",\n",
    "        \"content\": question\n",
    "    }\n",
    "]\n",
    "response = client.chat.completions.create(\n",
    "    model='glm-4',\n",
    "    messages=messages,\n",
    "    tools=tools,\n",
    "    top_p=0.1,\n",
    "    temperature=0.1,\n",
    "    max_tokens=2000,\n",
    ")\n",
    "response"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2024-02-06T08:09:41.461169Z",
     "start_time": "2024-02-06T08:09:33.373784Z"
    }
   },
   "id": "95c278e66046781"
  },
  {
   "cell_type": "markdown",
   "source": [],
   "metadata": {
    "collapsed": false
   },
   "id": "f4eff24d5fd69877"
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 1000x500 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1IAAAHWCAYAAAB9mLjgAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAACOcElEQVR4nOzdd3hTZQPG4V/SvQuFUsosG9mytwwFEXCggIKCiiDihwgu3AiKorJkKA5woAIOQBEQAUFZMgRBNpS9RwctXcn5/giNhLbQQtvT8dzXlavJSXLyZHQ8fc95j8UwDAMRERERERHJNKvZAURERERERPIbFSkREREREZEsUpESERERERHJIhUpERERERGRLFKREhERERERySIVKRERERERkSxSkRIREREREckiFSkREREREZEsUpESERERERHJIhUpkRw0Y8YMLBYLGzZsMDtKrkt97gcOHDA7ynU5cOAAFouFGTNmmB3lhvXt25fy5ctn6zrz+/ubW3LitS+IcvN1Kl++PJ07d86Vx8opFouF119/PVce65ZbbuGWW27JlccSyW9UpESu8Prrr2OxWDhz5ky619esWVO/VLJR6uudevLw8KB8+fIMHjyYqKgos+Nd0++//54mf4UKFXjooYfYv3+/2fFu2FtvvcXcuXPNjuGifPnyztfbarUSHBxMrVq16N+/P+vWrTM7ngCrV6/m9ddfN+17ePv27bz++uumFv2rFbYNGzZk6z9qzH69AZKSkpgwYQL16tUjMDCQ4OBgatSoQf/+/dm5c2e2Zp0yZUqB+CeX5H/uZgcQEQGYOnUq/v7+xMXFsXTpUj744AM2bdrEn3/+aXa0TBk8eDANGzYkOTmZTZs2MW3aNBYsWMDWrVsJDw83O951e+utt7j33nu56667XJY/+OCD9OzZEy8vL1Ny1a1bl2HDhgEQGxvLjh07mDNnDh9//DFPP/00Y8eONSWXOKxevZoRI0bQt29fgoODr3n7jz/+GLvdnm2Pv337dkaMGMEtt9xSIEcEL168iLv7f3/CZfX1zgndunVj4cKF3H///Tz22GMkJyezc+dOfv75Z5o1a0a1atWyLeuUKVMoVqwYffv2zb4nIHIdVKREckBCQgKenp5mx8hX7r33XooVKwbAgAED6NmzJ7NmzeKvv/6iUaNGN7z+1PfEas2ZgfiWLVty7733AvDwww9TpUoVBg8ezOeff87w4cNz5DHN5Obmhpubm2mPX6pUKXr37u2y7J133uGBBx5g3LhxVK5cmYEDB5qUTrLKw8PD7Aj5ire3t9kRXKxfv56ff/6ZN998kxdffNHlukmTJuWLrQtEroc27RO5Qambdn377be8/PLLlCpVCl9fX2JiYpy3iY+PZ8CAAYSEhBAYGMhDDz3E+fPnXdYzb9487rjjDsLDw/Hy8qJixYqMHDkSm83mcrtbbrmFmjVrsn37dtq0aYOvry+lSpVizJgxmco7ffp02rZtS2hoKF5eXtx0001MnTo1ze1SN0v5888/adSoEd7e3lSoUIEvvvgizW3//fdf2rZti4+PD6VLl2bUqFE3/N/lli1bArBv3z6XTOn9B/LKbfiv9p6cO3eOZ555hlq1auHv709gYCC33347W7ZsuaG8V2rbti0AkZGRzmVTpkyhRo0aeHl5ER4ezqBBg9L8gZH6/m7cuJFmzZrh4+NDREQEH374ocvtMtpHKfW5//7771fN995779GsWTNCQkLw8fGhfv36fPfddy63sVgsxMXF8fnnnzs3pUt9/TN6/Kw8x+v9DGfEx8eHL7/8kqJFi/Lmm29iGIbzOrvdzvjx46lRowbe3t6UKFGCAQMGuHwfdu7cmQoVKqS77qZNm9KgQQOXZV999RX169fHx8eHokWL0rNnTw4fPnzNnHFxcQwbNowyZcrg5eVF1apVee+991zyguP1f/LJJ5k5cyZVq1bF29ub+vXrs3LlSpfbpW4eu3v3bnr37k1QUBDFixfnlVdewTAMDh8+zJ133klgYCBhYWG8//77aTIlJiby2muvUalSJby8vChTpgzPPfcciYmJ6WaaO3cuNWvWxMvLixo1arBo0SKXPM8++ywAERERzs/O1Tazu3IfqdR9FN977z2mTZtGxYoV8fLyomHDhqxfv/6qr++MGTO47777AGjTpo3z8a/8nsjMz7aoqCiGDBnifK8qVarEO++8k62jZ6n69u2Lv78/R48e5a677sLf35/ixYvzzDPPpPk9cPk+Upl5vTP7WU19rX18fGjUqBF//PFHprKn/pxu3rx5muvc3NwICQnJVNbM/H4qX748//77LytWrHDe//Kf/5l9z7799lvq169PQEAAgYGB1KpViwkTJmTq+Yqk0oiUSDYZOXIknp6ePPPMMyQmJrqMSD355JMEBwfz+uuvs2vXLqZOncrBgwedf/SC45e/v78/Q4cOxd/fn2XLlvHqq68SExPDu+++6/JY58+fp2PHjtxzzz10796d7777jueff55atWpx++23XzXn1KlTqVGjBl27dsXd3Z2ffvqJJ554ArvdzqBBg1xuu3fvXu69914effRR+vTpw2effUbfvn2pX78+NWrUAODEiRO0adOGlJQUXnjhBfz8/Jg2bRo+Pj439Hqm/mItUqTIda8jvfdk+/btzJ07l/vuu4+IiAhOnjzJRx99ROvWrdm+fXu2bYaX+ofF5X9AjBgxgvbt2zNw4EDn52D9+vWsWrXK5T/y58+fp1OnTnTv3p3777+f2bNnM3DgQDw9PXnkkUeyJd+ECRPo2rUrvXr1IikpiW+//Zb77ruPn3/+mTvuuAOAL7/8kn79+tGoUSP69+8PQMWKFTNcZ1af4/V+hq/G39+fu+++m08//ZTt27c7P6cDBgxgxowZPPzwwwwePJjIyEgmTZrE33//7czWo0cPHnroIdavX0/Dhg2d6zx48CBr1651+T588803eeWVV+jevTv9+vXj9OnTfPDBB7Rq1Yq///47w02WDMOga9euLF++nEcffZS6deuyePFinn32WY4ePcq4ceNcbr9ixQpmzZrF4MGD8fLyYsqUKXTs2JG//vqLmjVruty2R48eVK9enbfffpsFCxYwatQoihYtykcffUTbtm155513mDlzJs888wwNGzakVatWgKNkdu3alT///JP+/ftTvXp1tm7dyrhx49i9e3eafeT+/PNPfvjhB5544gkCAgKYOHEi3bp149ChQ4SEhHDPPfewe/duvvnmG8aNG+ccaS5evHiW38+vv/6a2NhYBgwYgMViYcyYMdxzzz3s378/w1GsVq1aMXjwYCZOnMiLL75I9erVAZxfIXM/2+Lj42ndujVHjx5lwIABlC1bltWrVzN8+HCOHz/O+PHjs/x8rsVms9GhQwcaN27Me++9x2+//cb7779PxYoVMxxhvdbrndnP6qeffsqAAQNo1qwZQ4YMYf/+/XTt2pWiRYtSpkyZq+YuV64cADNnzqR58+Yumx1mJWtmfj+NHz+e//3vf/j7+/PSSy8BUKJECSDz79mSJUu4//77adeuHe+88w4AO3bsYNWqVTz11FNXf5NELmeIiIvXXnvNAIzTp0+ne32NGjWM1q1bOy8vX77cAIwKFSoY8fHxLredPn26ARj169c3kpKSnMvHjBljAMa8efOcy668r2EYxoABAwxfX18jISHBuax169YGYHzxxRfOZYmJiUZYWJjRrVu3az6/9B6nQ4cORoUKFVyWlStXzgCMlStXOpedOnXK8PLyMoYNG+ZcNmTIEAMw1q1b53K7oKAgAzAiIyOvmif19d61a5dx+vRp48CBA8Znn31m+Pj4GMWLFzfi4uJcMvXp0yfNOlq3bp3p9yQhIcGw2WwuyyIjIw0vLy/jjTfecFkGGNOnT79q/tTH+uyzz4zTp08bx44dMxYsWGCUL1/esFgsxvr1641Tp04Znp6exm233eby2JMmTXLe9/LnAhjvv/++c1liYqJRt25dIzQ01Pk5Sv1sXfn6puZZvny5c1mfPn2McuXKudzuytclKSnJqFmzptG2bVuX5X5+fum+5lc+/vU8x+v9DJcrV8644447Mrx+3LhxLt9ff/zxhwEYM2fOdLndokWLXJZHR0en+XwbhuP71WKxGAcPHjQMwzAOHDhguLm5GW+++abL7bZu3Wq4u7u7LL/ytZ87d64BGKNGjXK577333mtYLBZj7969zmWAARgbNmxwLjt48KDh7e1t3H333c5lqd9D/fv3dy5LSUkxSpcubVgsFuPtt992Lj9//rzh4+Pj8p5++eWXhtVqNf744w+XTB9++KEBGKtWrXLJ5Onp6ZJzy5YtBmB88MEHzmXvvvtupr7/U135OqV+/4WEhBjnzp1zLp83b54BGD/99NNV1zdnzpw03wepMvuzbeTIkYafn5+xe/dul/u/8MILhpubm3Ho0KGrZrja53T9+vVpfr706dPHAFx+DhmGYdSrV8+oX7++yzLAeO2115yXM3q9M/tZTUpKMkJDQ426desaiYmJzttNmzbNAFx+vqbHbrc7v69LlChh3H///cbkyZOd3zOXu9pnI7O/n678PZwqs+/ZU089ZQQGBhopKSlXfV4i16JN+0SySZ8+fTIchenfv7/Lf08HDhyIu7s7v/zyi3PZ5feNjY3lzJkztGzZkvj4eJcZj8DxX/fL9w/x9PSkUaNGmZol7vLHiY6O5syZM7Ru3Zr9+/cTHR3tctubbrrJuYkdOP5rWLVqVZfH+eWXX2jSpInLfkzFixenV69e18xyuapVq1K8eHHKly/P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sWMJDw8nIiIi3X3isvocb9TRo0ed+1xcuHCB7du3M2fOHE6cOMGwYcNcJuto3bo1AwYMYPTo0WzevJnbbrsNDw8P9uzZw5w5c5gwYYLzYMrg+AM4ICCAZ555Bjc3N7p16+by2BUrVmTUqFEMHz6cAwcOcNdddxEQEEBkZCQ//vgj/fv355lnnkk3d5cuXWjTpg0vvfQSBw4coE6dOvz666/MmzePIUOGpPks16xZkw4dOrhMfw4wYsSIbHkdAR588EFmz57N448/zvLly2nevDk2m42dO3cye/ZsFi9enOYYWteSWvhfeuklevbsiYeHB126dEmz719OqVu3Lm5ubrzzzjtER0fj5eXlPD5RZj377LPMnz+fzp07O6dGj4uLY+vWrXz33XccOHDgqqPY/fv357PPPuO+++7jkUceoV69epw9e5ZZs2axbds2vvjii2w7cHtGr3dmP6seHh6MGjWKAQMG0LZtW3r06EFkZCTTp0/P1M/GLVu28MADD3D77bfTsmVLihYtytGjR/n88885duwY48ePdxaljLJm5fdT/fr1mTp1KqNGjaJSpUqEhobStm3bTL9n/fr149y5c7Rt25bSpUtz8OBBPvjgA+rWresyTb7INeXa/IAi+cxXX31lNGnSxPDz8zO8vLyMatWqGSNGjHCZitww/ptues6cOWnWkTpF9IoVK4z+/fsbRYoUMfz9/Y1evXoZZ8+edbntqlWrjCZNmhg+Pj5GeHi48dxzzxmLFy9OM4Vv69atjRo1aqR5rPSmuE7P/Pnzjdq1axve3t5G+fLljXfeecf47LPP0kxHm9HUvVdONW4YhvHPP/8YrVu3Nry9vY1SpUoZI0eOND799NMsTX+e3nTz0dHRRlBQkMvjvf/++0apUqUMLy8vo3nz5saGDRsynP48vfckISHBGDZsmFGyZEnDx8fHaN68ubFmzZo068jq9OfpPdaVJk2aZFSrVs3w8PAwSpQoYQwcONA4f/68y21S398NGzYYTZs2Nby9vY1y5coZkyZNSrO+ffv2Ge3btze8vLyMEiVKGC+++KKxZMmSTE1//umnnxqVK1d2franT5/ufC8ut3PnTqNVq1aGj4+PATinzc5o+vWsPMcrZfYznDp9NWBYLBYjMDDQqFGjhvHYY4+5TMN/pWnTphn169c3fHx8jICAAKNWrVrGc889Zxw7dizNbXv16mUARvv27TNc3/fff2+0aNHC8PPzM/z8/Ixq1aoZgwYNMnbt2nXV5xQbG2s8/fTTRnh4uOHh4WFUrlzZePfddw273e5yO8AYNGiQ8dVXXznfq3r16qWZ0juj76E+ffoYfn5+aXKn9/onJSUZ77zzjlGjRg3Dy8vLKFKkiFG/fn1jxIgRRnR0dJpMV0rv0AQjR440SpUqZVit1mv+LMho+vN33303zW25YurvjHz88cdGhQoVDDc3N5fviaz8bIuNjTWGDx9uVKpUyfD09DSKFStmNGvWzHjvvfdcDmmRkfPnzxtPP/20ERERYXh4eBiBgYFGmzZtjIULF6a5bUbvV3rfl+m9Bld7vTPzWTUMw5gyZYoRERFheHl5GQ0aNDBWrlyZ7utypZMnTxpvv/220bp1a6NkyZKGu7u7UaRIEaNt27bGd999l+b2GWXN7O+nEydOGHfccYcREBCQZnr2zLxn3333nXHbbbcZoaGhhqenp1G2bFljwIABxvHjx6/6PEWuZDGMHNg7VERErsstt9zCmTNnnBMmSOFlsVgYNGhQms0ARUQkb9A+UiIiIiIiIlmkIiUiIiIiIpJFKlIiIiIiIiJZpH2kREREREREskgjUiIiIiIiIlmkIiUiIiIiIpJFOiAvYLfbOXbsGAEBAVgsFrPjiIiIiIiISQzDIDY2lvDwcKzWjMedVKSAY8eOUaZMGbNjiIiIiIhIHnH48GFKly6d4fUqUkBAQADgeLECAwNNTiMiIiIiImaJiYmhTJkyzo6QERUpcG7OFxgYqCIlIiIiIiLX3OVHk02IiIiIiIhkkYqUiIiIiIhIFqlIiYiIiIiIZJH2kRIRERERySNsNhvJyclmxyjQ3NzccHd3v+HDHqlIiYiIiIjkARcuXODIkSMYhmF2lALP19eXkiVL4unped3rUJESERERETGZzWbjyJEj+Pr6Urx48RseLZH0GYZBUlISp0+fJjIyksqVK1/1oLtXoyIlIiIiImKy5ORkDMOgePHi+Pj4mB2nQPPx8cHDw4ODBw+SlJSEt7f3da1Hk02IiIiIiOQRGonKHdc7CuWyjmzIISIiIiIiUqioSImIiIiIiGSRqUVq5cqVdOnShfDwcCwWC3PnznW53jAMXn31VUqWLImPjw/t27dnz549Lrc5d+4cvXr1IjAwkODgYB599FEuXLiQi89CRERERESyqnz58owfP97sGNfN1CIVFxdHnTp1mDx5crrXjxkzhokTJ/Lhhx+ybt06/Pz86NChAwkJCc7b9OrVi3///ZclS5bw888/s3LlSvr3759bT0FEREREpNC65ZZbGDJkSJrlM2bMIDg4ONfz5CZTZ+27/fbbuf3229O9zjAMxo8fz8svv8ydd94JwBdffEGJEiWYO3cuPXv2ZMeOHSxatIj169fToEEDAD744AM6derEe++9R3h4eK49FxERERERubakpKQbOn5TXpFnpz+PjIzkxIkTtG/f3rksKCiIxo0bs2bNGnr27MmaNWsIDg52liiA9u3bY7VaWbduHXfffXe6605MTCQxMdF5OSYmJueeSFacPwDf3A8WN7CmntwzuOwOVusVly/dxuWyO1isV1zO7PrTW19667+R9bmDZqcRERERcWEYBheTbaY8to+HW7bOHti3b1+ioqJo2LAhkydPxsvLi8jISABiY2O5//77mT9/PsHBwbz44osMGjTIed+xY8cyffp09u/fT9GiRenSpQtjxozB398fcIx8DRkyhFmzZjFkyBAOHz5MixYtmD59OiVLlsy255CePFukTpw4AUCJEiVclpcoUcJ53YkTJwgNDXW53t3dnaJFizpvk57Ro0czYsSIbE6cDZIvwqntZqcwgeVSscqJMpgPy6abJ3j4OM6LiIhIoXQx2cZNry425bG3v9EBX8/srQlLly4lMDCQJUuWuCx/9913efHFFxkxYgSLFy/mqaeeokqVKtx6662AY5ryiRMnEhERwf79+3niiSd47rnnmDJlinMd8fHxvPfee3z55ZdYrVZ69+7NM888w8yZM7P1OVwpzxapnDR8+HCGDh3qvBwTE0OZMmVMTHRJUBl4aD7YU8CwO77abZcu2y6dv/xyCtjtV1y+dBuXy5ld3/Wu/8r7pHMb42r/UTHAnuw4yX+sHo5C5e4NHt7g7uO47FyWzterXefuDR6+l63riq9uhfLHgYiIiOQCPz8/PvnkkzSb9DVv3pwXXngBgCpVqrBq1SrGjRvnLFKX739Vvnx5Ro0axeOPP+5SpJKTk/nwww+pWLEiAE8++SRvvPFGDj+jPFykwsLCADh58qTLsNzJkyepW7eu8zanTp1yuV9KSgrnzp1z3j89Xl5eeHl5ZX/oG+XlDxVam50iZxiGSeUwN8pm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lqKiIvn777/l9u3bsnLlSikoKJDKykr5448/JDw8XEaNGiX37t1TxjAajTJ58mQ5c+aMnDx5UkaNGiUJCQnK+cbGRvH395eFCxdKSUmJ7N+/Xzw8PCQtLc0eS6Z/eVr+IiKHDh0SFxcXSU9Pl7KyMklNTRUnJyc5ceKEMsa7774rw4YNk5ycHDl37pxERERIRESEcr61tVXCwsLEYDBIcXGxZGVlia+vr6xdu7bH10tqneUvInLz5k3x8PCQ7du3P3YM7v++q7P8Z8+eLaGhoWIymaSiokL27NkjOp1Otm3bpozB/d93dZb/Tz/9JCaTScrLyyUjI0P0er3Ex8erxmD+fdeyZctkwIABkpubKxaLRXncvXtXqemKfCsqKsTDw0NWrVolpaWlsnXrVnFycpKsrKweXS+JsJHqBiaTSQA88li0aJHcvXtXDAaD+Pr6iouLi+j1ennrrbdUt7kUEamvr5eEhATx9PQULy8vWbJkidy+fVtVc/78eZkxY4a4ubnJc889J+vXr+/JZdITPC3/Drt27ZKRI0eKTqeTiRMnSkZGhmqM5uZmee+998THx0c8PDxk7ty5YrFYVDVVVVUSHR0t7u7uMnjwYPnggw/EarX2xBLpKf5L/mlpaeLu7i6NjY2PHYP7v+/qLH+LxSKLFy+WwMBA0el0EhISIps2bZL29nZlDO7/vquz/Lds2SJBQUHi4uIiw4YNk48//viRW5Yz/77rcdkDkD179ig1XZWvyWSSSZMmiaurqwQHB6veg3qORoR/4UhERERERGQL/o0UERERERGRjdhIERERERER2YiNFBERERERkY3YSBEREREREdmIjRQREREREZGN2EgRERERERHZiI0UERERERGRjdhIERERERER2YiNFBERERERkY3YSBERkUMREURGRiIqKuqRc9u2bYO3tzdqamrsMDMiInIkbKSIiMihaDQa7NmzB2fOnEFaWppyvLKyEqtXr0ZqaiqCgoK69D2tVmuXjkdERL0fGykiInI4Q4cOxZYtW7By5UpUVlZCRJCYmAiDwYDJkycjOjoanp6e8Pf3x8KFC3H9+nXltVlZWZgxYwa8vb0xaNAgvPrqqygvL1fOV1VVQaPR4Mcff8Ts2bOh0+nw/fff22OZRERkRxoREXtPgoiIqDvExcXh5s2biI+PxxdffIFLly4hNDQUS5cuxZtvvonm5masWbMGra2tyMnJAQAcPHgQGo0GEyZMQFNTE9atW4eqqioUFxdDq9WiqqoKI0aMwPDhw7Fp0yZMnjwZOp0OQ4YMsfNqiYioJ7GRIiIih1VXV4fQ0FA0NDTg4MGDKCkpwYkTJ3Ds2DGlpqamBkOHDoXZbMbo0aMfGeP69evw9fXFxYsXERYWpjRS33zzDd5///2eXA4REfUivLSPiIgclp+fH9555x2MHTsWcXFxOH/+PEwmEzw9PZXHmDFjAEC5fK+srAwJCQkIDg6Gl5cXhg8fDgCorq5WjT116tQeXQsREfUuzvaeABERUXdydnaGs/ODj7umpibExMRgw4YNj9R1XJoXExMDvV6PnTt3IjAwEO3t7QgLC0NLS4uqvl+/ft0/eSIi6rXYSBER0TMjPDwcBw8exPDhw5Xm6t/q6+thNpuxc+dOzJw5EwBw8uTJnp4mERH1Aby0j4iInhlJSUloaGhAQkICzp49i/Lychw7dgxLlixBW1sbfHx8MGjQIKSnp+PKlSvIycnBihUr7D1tIiLqhdhIERHRMyMwMBB//vkn2traYDAYMH78eKSkpMDb2xtarRZarRb79+9HYWEhwsLCsHz5cmzcuNHe0yYiol6Id+0jIiIiIiKyEb+RIiIiIiIishEbKSIiIiIiIhuxkSIiIiIiIrIRGykiIiIiIiIbsZEiIiIiIiKyERspIiIiIiIiG7GRIiIiIiIishEbKSIiIiIiIhuxkSIiIiIiIrIRGykiIiIiIiIbsZEiIiIiIiKy0f8Ar79T3YFONZAAAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": "[{'role': 'system',\n  'content': \"\\nYou are a data analyst, you will have a code execution tool, you need to write a python script, the tool will execute your content and return the results, now please analyze my csv file.\\nI will provide you with some information about the csv, which is as follows:\\n{\\n     info: Changes in the urban-rural population ratio in major regions of the world from 1500 to 2050. The csv contains five columns, namely\\n     column info: Entity,Code,Year, Urban population (%) long-run with 2050 projections (OWID),Rural population (%) long-run with 2050 projections (OWID)\\n     path : 'data/urban-rural-population.csv'\\n}\\nEach column has some data, which you need to read through python code.\\nNow, please follow my requirements, write the code appropriately, and analyze my csv file.\\nI will provide you with the code to execute the tool, you just need to write the code according to my requirements.\\nAll answers must be provided after querying the csv I provided. Your return must be executable python code and no other content.\\nThinking step by step, here's my request, let's get started:\\n\"},\n {'role': 'user',\n  'content': 'Read csv and draw the distribution of urban and rural population development in the United States'},\n {'role': 'tool',\n  'content': 'Code finished successfully!',\n  'tool_call_id': 'call_8367733565668098891'}]"
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "extract_function_and_execute(llm_output=response, messages=messages)"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2024-02-06T08:09:51.282107Z",
     "start_time": "2024-02-06T08:09:49.218840Z"
    }
   },
   "id": "7bbcc3a4a20f9939"
  },
  {
   "cell_type": "markdown",
   "source": [
    "## Continuously call the tool until the data analysis task is completed\n",
    "\n",
    "由于并不是所有的任务都能通过一次调用工具完成任务，因此，我们需要完善这个代码，使得其能够在调用模型工具的时候获得反馈，如果代码无法执行，模型将获得报错的信息，并重写代码，通过不断的优化，完成最终的任务。在这里，我们完善代码，使其完成一个更复杂的任务，通过不管尝试，验证模型是否能完成任务。\n",
    "\n",
    "Since not all tasks can be completed by calling the tool once, we need to improve this code so that it can get feedback when calling the model tool. If the code cannot be executed, the model will get error information and rewrite it. The code, through continuous optimization, completes the final task. Here, we refine the code to perform a more complex task and verify that the model can complete the task regardless of attempts."
   ],
   "metadata": {
    "collapsed": false
   },
   "id": "7036be86fdeda234"
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "====================================================\n",
      "Question: From 1972 to 2048, did more people in Russia live in cities or in rural areas? What is the rate of growth or decline, and when is the fastest growth or decline?\n",
      "Try 1 times\n",
      "====================================================\n",
      "\n",
      "Final answer for question: From 1972 to 2048, did more people in Russia live in cities or in rural areas? What is the rate of growth or decline, and when is the fastest growth or decline?\n",
      "Based on the analysis of the CSV file provided, from 1972 to 2048, the urban population in Russia grew at a faster rate than the rural population. The rate of growth or decline in the population difference between cities and rural areas is approximately 1.97% per year. The fastest growth or decline was observed in the year 1994.\n",
      "====================================================\n",
      "Question: Please draw the distribution of urban and rural population proportions in 2023 and 2030 for all the countries in the table, and summarize the trends.\n"
     ]
    },
    {
     "data": {
      "text/plain": "<Figure size 1000x500 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0kAAAHWCAYAAACi1sL/AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABXTUlEQVR4nO3dd3RU1f7+8WfSCSEJJSSEGukdLqBSpEgJVZpcQVRArIB0kSIQQKUoRSCC3isgNhBEUFQ6gQvSqyCdUJQqkISekOzfH/4y3xlSyIQkE+D9WitrMfucOeczZ/YMebLP2cdijDECAAAAAEiSXJxdAAAAAABkJ4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkIAVhYWGyWCxZsq/69eurfv361scRERGyWCxauHBhluy/a9euKlasWJbsK72uXbumV155RUFBQbJYLOrbt2+W7LdYsWJq2bJlluwruylWrJi6du3q7DLS7UHo12lx4sQJWSwWzZkzJ0O3+6C/vw+S7HysH5bPCZDRCEl4JMyZM0cWi8X64+XlpeDgYIWGhmrq1Km6evVqhuznzJkzCgsL0+7duzNkexkpO9eWFh988IHmzJmjN998U19++aVefPHFFNe1WCzq1atXsssWLlwoi8WiiIiITKr00WP72bJYLPL19VW9evX0888/O7u0NKlfv75d/Xny5FGNGjU0a9YsJSQkOLu8+/Lbb78pLCxMUVFRzi7FKrnv41KlSqlXr146f/68s8tLt+x4rJ3h4MGDGjRokKpUqaJcuXKpQIECatGihbZv357s+n/99Zf+/e9/y9/fX76+vmrdurWOHz9ut87p06c1atQoPf7448qdO7fy5cun+vXra9WqVUm2t379ej3zzDMqXLiwvLy8FBQUpKZNm2rjxo2Z8nrx8HJzdgFAVho9erRCQkIUFxenc+fOKSIiQn379tWkSZP0448/qlKlStZ13333XQ0ePNih7Z85c0ajRo1SsWLFVKVKlTQ/b8WKFQ7tJz1Sq+0///lPtv9lcM2aNXryySc1cuRIZ5eCZDRu3FgvvfSSjDE6efKkZsyYoVatWunXX39VaGios8u7p0KFCmns2LGSpIsXL2ru3Lnq3r27Dh8+rHHjxjm5uvT77bffNGrUKHXt2lX+/v52yw4dOiQXF+f9rTTx+/jWrVvasGGDZsyYoV9++UX79u2Tt7e30+pKr+x8rFOT0d////3vf/X555+rffv26tGjh6Kjo/Xpp5/qySef1LJly9SoUSPruteuXVODBg0UHR2toUOHyt3dXZMnT1a9evW0e/du5c2bV5K0ZMkSjR8/Xm3atFGXLl10584dzZ07V40bN9asWbPUrVs36zYPHz4sFxcXvfHGGwoKCtKVK1f01VdfqW7duvr555/VtGnTDHuteLgRkvBIadasmapXr259PGTIEK1Zs0YtW7bUM888owMHDihHjhySJDc3N7m5Ze5H5MaNG/L29paHh0em7ude3N3dnbr/tLhw4YLKlSuXZftLfG+QNqVKldILL7xgfdy+fXuVK1dOH3/8cYaFpMx8T/z8/Ozqf/3111W6dGlNnz5dY8aMeSA+I47y9PR06v5tv49feeUV5c2bV5MmTdKSJUvUqVOnZJ9z/fp15cyZMyvLvKe01OTsY52ajO7bnTp1UlhYmHx8fKxtL7/8ssqWLauwsDC7kPTJJ5/oyJEj2rp1q2rUqCHpn35RoUIFTZw4UR988IEkqUGDBjp16pTy5ctnfe4bb7yhKlWqaMSIEXYh6ZVXXtErr7xiV1OPHj302GOPacqUKYQkpFn2/LMGkIWefvppDR8+XCdPntRXX31lbU/umqSVK1eqTp068vf3l4+Pj0qXLq2hQ4dK+uc6osQv+W7dullPJUm8jqB+/fqqUKGCduzYobp168rb29v63LuvSUoUHx+voUOHKigoSDlz5tQzzzyj06dP262T0rnuttu8V23JnZN+/fp1DRgwQIULF5anp6dKly6tjz76SMYYu/UST21bvHixKlSoIE9PT5UvX17Lli1L/oDf5cKFC+revbsCAwPl5eWlypUr64svvrAuT7w+KzIyUj///LO19hMnTqRp+2mR2nuTaMWKFapSpYq8vLxUrlw5LVq0yG755cuXNXDgQFWsWFE+Pj7y9fVVs2bNtGfPHrv1El/Pd999p/fff1+FChWSl5eXGjZsqKNHj96z1pMnT6pHjx4qXbq0cuTIobx586pDhw5JjkfiKU0bN25U//79FRAQoJw5c6pt27a6ePGi3brGGL333nsqVKiQvL291aBBA+3fv9+BI5hU2bJllS9fPh07dixJTXfXmnhMbE+BTO09WbJkiVq0aKHg4GB5enqqePHiGjNmjOLj4++rZlve3t568skndf36devxOn78uDp06KA8efJYl999SmHia5k/f36GfHZTsnfvXnXt2lWPPfaY9ZSil19+WZcuXbKuExYWprfffluSFBISkuSzk9z+HXmN6e3DKXn66aclSZGRkZL++V7y8fHRsWPH1Lx5c+XKlUudO3eW5Pj309dff63SpUvLy8tL1apV0/r165Psf9euXWrWrJl8fX3l4+Ojhg0bavPmzXbrJPbhdevWqUePHsqfP78KFSqULY71kSNH1L59ewUFBcnLy0uFChVSx44dFR0dnepxv/v7P/EauI8++kifffaZihcvLk9PT9WoUUPbtm1LdVuSVK1aNbuAJEl58+bVU089pQMHDti1L1y4UDVq1LD+/yRJZcqUUcOGDfXdd99Z28qXL28XkKR/gmfz5s31559/3vOUeW9vbwUEBDzyp0LCMYwkAZJefPFFDR06VCtWrNCrr76a7Dr79+9Xy5YtValSJY0ePVqenp46evSo9TznsmXLavTo0RoxYoRee+01PfXUU5KkWrVqWbdx6dIlNWvWTB07dtQLL7ygwMDAVOt6//33ZbFY9M477+jChQuaMmWKGjVqpN27d1tHvNIiLbXZMsbomWee0dq1a9W9e3dVqVJFy5cv19tvv62//vpLkydPtlt/w4YNWrRokXr06KFcuXJp6tSpat++vU6dOmU9XSI5N2/eVP369XX06FH16tVLISEhWrBggbp27aqoqCj16dNHZcuW1Zdffql+/fqpUKFCGjBggCQpICAgza8/LVJ7b44cOaLnnntOb7zxhrp06aLZs2erQ4cOWrZsmRo3bizpn194Fi9erA4dOigkJETnz5/Xp59+qnr16umPP/5QcHCw3f7GjRsnFxcXDRw4UNHR0ZowYYI6d+6sLVu2pFrntm3b9Ntvv6ljx44qVKiQTpw4oRkzZqh+/fr6448/koy0vPXWW8qdO7dGjhypEydOaMqUKerVq5fmz59vXWfEiBF677331Lx5czVv3lw7d+5UkyZNFBsbm+7jGR0drStXrqh48eLp3kZK78mcOXPk4+Oj/v37y8fHR2vWrNGIESMUExOjDz/8MN37u9vx48fl6uoqf39/nT9/XrVq1dKNGzfUu3dv5c2bV1988YWeeeYZLVy4UG3btrV7bkZ9dlOycuVKHT9+XN26dVNQUJD279+vzz77TPv379fmzZtlsVjUrl07HT58WN9++60mT55s/SUzpc+Oo68xvX04JYmB2vY7486dOwoNDVWdOnX00Ucfydvb2+Hvp3Xr1mn+/Pnq3bu3PD099cknn6hp06baunWrKlSoIOmf7/ennnpKvr6+GjRokNzd3fXpp5+qfv36WrdunZ544gm7bfbo0UMBAQEaMWKErl+/rmbNmjn1WMfGxio0NFS3b9/WW2+9paCgIP31119aunSpoqKi5Ofn5/D78c033+jq1at6/fXXZbFYNGHCBLVr107Hjx9P1+jTuXPn7IJOQkKC9u7dq5dffjnJuo8//rhWrFihq1evKleuXKlu09vbO9kR5piYGMXGxurvv//W3LlztW/fviR//AJSZYBHwOzZs40ks23bthTX8fPzM1WrVrU+HjlypLH9iEyePNlIMhcvXkxxG9u2bTOSzOzZs5Msq1evnpFkZs6cmeyyevXqWR+vXbvWSDIFCxY0MTEx1vbvvvvOSDIff/yxta1o0aKmS5cu99xmarV16dLFFC1a1Pp48eLFRpJ577337NZ79tlnjcViMUePHrW2STIeHh52bXv27DGSzLRp05Lsy9aUKVOMJPPVV19Z22JjY03NmjWNj4+P3WsvWrSoadGiRarbs62pZ8+eyS5bsGCBkWTWrl1rbUvtvSlatKiRZL7//ntrW3R0tClQoIBdf7l165aJj4+3e25kZKTx9PQ0o0ePtrYlvrdly5Y1t2/ftrZ//PHHRpL5/fffU31tN27cSNK2adMmI8nMnTvX2pbY5xs1amQSEhKs7f369TOurq4mKirKGGPMhQsXjIeHh2nRooXdekOHDjWSku1bd5Nkunfvbi5evGguXLhgtm/fbpo2bWokmQ8//DBJTZGRkXbPTzwmaX1PkjsGr7/+uvH29ja3bt2ytt3dr1NSr149U6ZMGXPx4kVz8eJFc+DAAdO7d28jybRq1coYY0zfvn2NJPO///3P+ryrV6+akJAQU6xYMet7nxmf3cjIyCSf3eSOwbfffmskmfXr11vbPvzww2SPeXL7d/Q1prcPJ/aDVatWmYsXL5rTp0+befPmmbx585ocOXKYP//80xjzz/snyQwePNju+Y5+P0ky27dvt7adPHnSeHl5mbZt21rb2rRpYzw8PMyxY8esbWfO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z549lTdvXvn4+Kh9+/Y6f/68kyoGAAAA8LBzakhat26devbsqc2bN2vlypWKi4tTkyZNdP36des6/fr1008//aQFCxZo3bp1OnPmjNq1a+fEqgEAAAA8zJx6M9lly5bZPZ4zZ47y58+vHTt2qG7duoqOjtbnn3+ub775Rk8//bQkafbs2Spbtqw2b96sJ5980hllAwAAAHiIZatrkqKjoyVJefLkkSTt2LFDcXFxatSokXWdMmXKqEiRItq0aVOy27h9+7ZiYmLsfgAAAAAgrZw6kmQrISFBffv2Ve3atVWhQgVJ0rlz5+Th4SF/f3+7dQMDA3Xu3LlktzN27FiNGjUqs8tNt7CIMGeXYBVWP8zZJQAAACAThIU5uwJ72a2ee8k2I0k9e/bUvn37NG/evPvazpAhQxQdHW39OX36dAZVCAAAAOBRkC1Gknr16qWlS5dq/fr1KlSokLU9KChIsbGxioqKshtNOn/+vIKCgpLdlqenpzw9PTO7ZAAAAAAPKaeOJBlj1KtXL/3www9as2aNQkJC7JZXq1ZN7u7uWr16tbXt0KFDOnXqlGrWrJnV5QIAAAB4BDh1JKlnz5765ptvtGTJEuXKlct6nZGfn59y5MghPz8/de/eXf3791eePHnk6+urt956SzVr1mRmOwAAAACZwqkhacaMGZKk+vXr27XPnj1bXbt2lSRNnjxZLi4uat++vW7fvq3Q0FB98sknWVwpAAAAgEeFU0OSMeae63h5eSk8PFzh4eFZUBEAAACAR122md0OAAAAALIDQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANN2cXAADpERYR5uwS7ITVD3N2CcBDISzM2RX8n+xUC4CsxUgSAAAAANggJAEAAACADUISAAAAANggJAEAAACADUISAAAAANggJAEAAACADUISAAAAANggJAEAAACADUISAAAAANggJAEAAACADUISAAAAANggJAEAAACADUISAAAAANggJAEAAACADUISAAAAANhwc3YBAICMFRHh7Ar+T/36zq4g+4pQmLNLsBHm7AIAIFthJAkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAAAAAbBCS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Yfrwww+dXVa65MmTR7ly5cqSfa1atUpnz57V8uXLde3aNTVr1ixJaEsUFxeXJTUlJzY2NsVlPj4+yps3b6bXsGHDBh07dkzt27e3tr3yyit6+umntXPnTkVHR+uDDz6wLps4caJq166txx9/PMm2unbtqqlTp2Z6zQCQlQhJAJDNeHp6KigoSEWLFtWbb76pRo0a6ccff5QkXblyRS+99JJy584tb29vNWvWTEeOHLE+d86cOfL399fixYtVsmRJeXl5KTQ0VKdPn7au07VrV7Vp08Zun3379lX9+vVTrOnLL79U9erVlStXLgUFBen555/XhQsXJP0zktOgQQNJUu7cuWWxWNS1a1dJSU+3S2v9y5cvV9myZeXj42MNjfeSN29eBQUFqXr16vroo490/vx5bdmyxTrSNH/+fNWrV09eXl76+uuvlZCQoNGjR6tQoULy9PRUlSpVtGzZMuv2Ep83b9481apVS15eXqpQoYLWrVtnt99169bp8ccfl6enpwoUKKDBgwfbjfzVr19fvXr1Ut++fZUvXz6FhoaqWLFikqS2bdvKYrFYH999ul1aa1y0aJEaNGggb29vVa5cWZs2bUr1WM2bN0+NGzeWl5eXte3AgQN69dVXVapUKXXq1EkHDhyQJB0/flyff/653n///WS31apVK23fvl3Hjh1LdZ8A8CAhJAFANpcjRw7r6EPXrl21fft2/fjjj9q0aZOMMWrevLndyMiNGzf0/vvva+7cudq4caOioqLUsWPH+6ohLi5OY8aM0Z49e7R48WKdOHHCGoQKFy6s77//XpJ06NAhnT17Vh9//HGy20lr/R999JG+/PJLrV+/XqdOndLAgQMdqjdHjhyS7EdtBg8erD59+ujAgQMKDQ3Vxx9/rIkTJ+qjjz7S3r17FRoaqmeeecYutEnS22+/rQEDBmjXrl2qWbOmWrVqpUuXLkmS/vrrLzVv3lw1atTQnj17NGPGDH3++ed677337LbxxRdfyMPDQxs3btTMmTO1bds2SdLs2bN19uxZ6+O7pbXGYcOGaeDAgdq9e7c15KR2iub//vc/Va9e3a6tcuXKWrlype7cuaPVq1erUqVKkqQ33nhDEyZMSHFEsEiRIgoMDNT//ve/FPcHAA8cAwDINrp06WJat25tjDEmISHBrFy50nh6epqBAweaw4cPG0lm48aN1vX//vtvkyNHDvPdd98ZY4yZPXu2kWQ2b95sXefAgQNGktmyZUuSfSTq06ePqVevnvVxvXr1TJ8+fVKsc9u2bUaSuXr1qjHGmLVr1xpJ5sqVK3br2W7HkfqPHj1qXSc8PNwEBgamWEtkZKSRZHbt2mWMMebKlSumbdu2xsfHx5w7d866fMqUKXbPCw4ONu+//75dW40aNUyPHj3stjtu3Djr8ri4OFOoUCEzfvx4Y4wxQ4cONaVLlzYJCQl29fr4+Jj4+HjrMahatWqSuiWZH374wa5t5MiRpnLlyg7X+N///te6fP/+/UaSOXDgQIrHzM/Pz8ydO9eubd++faZu3bqmSJEiplOnTiY6OtrMnTvXtG7d2vz555+mSZMmpnjx4mbYsGFJtle1alUTFhaW4v4A4EHDSBIAZDNLly6Vj4+PvLy81KxZMz333HMKCwvTgQMH5ObmpieeeMK6bt68eVW6dGnrqVGS5Obmpho1algflylTRv7+/nbrOGrHjh1q1aqVihQpoly5cqlevXqSpFOnTqV5G2mt39vbW8WLF7c+LlCggPXUvtTUqlVLPj4+yp07t/bs2aP58+crMDDQutx25CQmJkZnzpxR7dq17bZRu3btJMepZs2a1n+7ubmpevXq1nUOHDigmjVrymKx2G3j2rVr+vPPP61t1apVu2f9d3OkxsRRH+mf4yUp1WN28+ZNu1PtJKl8+fJat26dTp48qW+++UZxcXEaOXKkpk+frrfeeku1atXSnj17tGjRIv300092z82RI4du3Ljh8GsEgOyKkAQA2UyDBg20e/duHTlyRDdv3tQXX3yhnDlzZtj2XVxcZIyxa0ttIoPr168rNDRUvr6++vrrr7Vt2zb98MMPklKfhCC93N3d7R5bLJYk9SZn/vz52rNnj65cuaJjx46pefPmdssz8hg6KrP3bXvMEgNbatNy58uXT1euXEl1m/3791ffvn1VqFAhRUREqEOHDsqZM6datGihiIgIu3UvX76sgICA9L8AAMhmCEkAkM3kzJlTJUqUUJEiReTm5mZtL1u2rO7cuaMtW7ZY2y5duqRDhw6pXLly1rY7d+5o+/bt1seHDh1SVFSUypYtK0kKCAhIMhHC7t27U6zn4MGDunTpksaNG6ennnpKZcqUSTJK4eHhIUmp3nMnrfWnV+HChVW8eHH5+/vfc11fX18FBwdr48aNdu0bN25MUsvmzZut/75z54527NhhPZZly5a1Xltlu41cuXKpUKFCqdbg7u6e6vFypEZHVa1aVX/88UeKy1evXq0DBw6oV69ekv55XxODdFxcnF3dt27d0rFjx1S1atX7qgkAshNCEgA8IEqWLKnWrVvr1Vdf1YYNG7Rnzx698MILKliwoFq3bm1dz93dXW+99Za2bNmiHTt2qGvXrnryySet0zc//fTT2r59u+bOnasjR45o5MiR2rdvX4r7LVKkiDw8PDRt2jQdP35cP/74Y5J7HxUtWlQWi0VLly7VxYsXde3atXTXn1XefvttjR8/XvPnz9ehQ4c0ePBg7d69W3369LFbLzw8XD/88IMOHjyonj176sqVK3r55ZclST169NDp06f11ltv6eDBg1qyZIlGjhyp/v37y8Ul9f9iixUrptWrV+vcuXMpjuqktUZHhYaGasOGDckuu3Xrlnr16qXPPvvM+hpq166t8PBw7dmzR99//73dKYCbN2+Wp6en3WmJAPCgIyQBwANk9uzZqlatmlq2bKmaNWvKGKNffvnF7nQrb29vvfPOO3r++edVu3Zt+fj4aP78+dbloaGhGj58uAYNGqQaNWro6tWreumll1LcZ0BAgObMmaMFCxaoXLlyGjdunD766CO7dQoWLKhRo0Zp8ODBCgwMtI5ApKf+rNK7d2/1799fAwYMUMWKFbVs2TL9+OOPKlmypN1648aN07hx41S5cmVt2LBBP/74o/Llyyfpn9f9yy+/aOvWrapcubLeeOMNde/eXe++++499z9x4kStXLlShQsXTnEUJq01Oqpz587av3+/Dh06lGTZqFGj1KJFC7upyKdOnardu3erbt26atWqld39lb799lt17txZ3t7e91UTAGQnFpOWE70BAA+EOXPmqG/fvineRBVpd+LECYWEhGjXrl12geFh8fbbbysmJkaffvppurfx999/q3Tp0tq+fbtCQkIysDoAcC5GkgAAeAQNGzZMRYsWTXWCh3s5ceKEPvnkEwISgIeO271XAQAADxt/f38NHTr0vrZRvXr1JDelBYCHAafbAQAAAIANTrcDAAAAABuEJAAAAACwQUgCAAAAABuEJAAAAACwQUgCAAAAABuEJAAAAACwQUgCAAAAABuEJAAAAACw8f8Ae17A+R64V8wAAAAASUVORK5CYII="
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Try 1 times\n",
      "====================================================\n"
     ]
    },
    {
     "data": {
      "text/plain": "<Figure size 1000x500 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0kAAAHWCAYAAACi1sL/AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABZZElEQVR4nO3dd3gUVf/+8XvTCSEJNSHUSO8gRQGVIEio0kRBfKQpKp2ASBEIoIJIk67Po4AVBEEUFQglIL2D9F6UKhBCJyTn94e/7HeXFLIhyQZ4v64r18WemZ357OzZJXfOzBmLMcYIAAAAACBJcnF2AQAAAACQmRCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSgCSEh4fLYrFkyL5CQkIUEhJifRwZGSmLxaJ58+ZlyP7bt2+vwoULZ8i+UuvatWt64403FBgYKIvFol69emXIfgsXLqzGjRtnyL4ym8KFC6t9+/bOLiPVHoZ+nRLHjx+XxWLRzJkz03S7D/v7+zDJzMf6UfmcAGmNkITHwsyZM2WxWKw/Xl5eCgoKUmhoqCZOnKirV6+myX5Onz6t8PBw7dixI022l5Yyc20p8dFHH2nmzJl655139PXXX+s///lPkutaLBZ169Yt0WXz5s2TxWJRZGRkOlX6+LH9bFksFvn6+qpWrVr69ddfnV1aioSEhNjVnyNHDlWtWlVffvml4uLinF3eA1m3bp3Cw8MVFRXl7FKsEvs+Ll68uLp166Zz5845u7xUy4zH2hn279+vfv36qWLFisqWLZvy5s2rRo0aacuWLYmu//fff+vll1+Wv7+/fH191bRpUx09etRunZs3b6pTp04qW7as/Pz85OPjowoVKujTTz9VTExMgm1GRUWpc+fOyp07t7JmzaratWtr27Zt6fJ68ehyc3YBQEYaPny4goODFRMTo7NnzyoyMlK9evXSuHHj9PPPP6t8+fLWdd9//33179/foe2fPn1aw4YNU+HChVWxYsUUP2/p0qUO7Sc1kqvtv//9b6b/ZXDFihV6+umnNXToUGeXgkS88MILev3112WM0YkTJzRt2jQ1adJEv//+u0JDQ51d3n3lz59fI0eOlCRduHBBX331lTp16qSDBw9q1KhRTq4u9datW6dhw4apffv28vf3t1t24MABubg472+l8d/Ht27d0po1azRt2jT99ttv2r17t7y9vZ1WV2pl5mOdnLT+/v/f//6nL774Qi1btlSXLl105coVffbZZ3r66ae1ePFi1a1b17rutWvXVLt2bV25ckUDBw6Uu7u7xo8fr1q1amnHjh3KmTOnpH9D0p49e9SwYUMVLlxYLi4uWrdunXr37q2NGzfqu+++s24zLi5OjRo10s6dO/Xuu+8qV65cmjp1qkJCQrR161YVK1YszV4rHm2EJDxWGjRooCpVqlgfDxgwQCtWrFDjxo314osvat++fcqSJYskyc3NTW5u6fsRuXHjhry9veXh4ZGu+7kfd3d3p+4/Jc6fP6/SpUtn2P7i3xukTPHixfXaa69ZH7ds2VKlS5fWp59+mmYhKT3fEz8/P7v633rrLZUoUUKTJ0/WiBEjHorPiKM8PT2dun/b7+M33nhDOXPm1Lhx47Rw4UK1adMm0edcv35dWbNmzcgy7yslNTn7WCcnrft2mzZtFB4eLh8fH2tbx44dVapUKYWHh9uFpKlTp+rQoUPatGmTqlatKunfflG2bFmNHTtWH330kSQpR44c2rBhg91+3n77bfn5+Wny5MkaN26cAgMDJf17tsC6des0d+5cvfTSS5Kkl19+WcWLF9fQoUPtAhWQnMz5Zw0gAz3//PMaPHiwTpw4oW+++cbantg1SREREXrmmWfk7+8vHx8flShRQgMHDpT073VE8V/yHTp0sJ5KEn8dQUhIiMqWLautW7fqueeek7e3t/W5916TFC82NlYDBw5UYGCgsmbNqhdffFGnTp2yWyepc91tt3m/2hI7J/369evq06ePChQoIE9PT5UoUUJjxoyRMcZuvfhT23766SeVLVtWnp6eKlOmjBYvXpz4Ab/H+fPn1alTJwUEBMjLy0sVKlTQrFmzrMvjr886duyYfv31V2vtx48fT9H2UyK59ybe0qVLVbFiRXl5eal06dKaP3++3fJLly6pb9++KleunHx8fOTr66sGDRpo586dduvFv54ffvhBH374ofLnzy8vLy/VqVNHhw8fvm+tJ06cUJcuXVSiRAllyZJFOXPmVKtWrRIcj/hTmtauXauwsDDraSfNmzfXhQsX7NY1xuiDDz5Q/vz55e3trdq1a2vPnj0OHMGESpUqpVy5cunIkSMJarq31vhjYnsKZHLvycKF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li1brG0nTpwwXl5epnnz5ta2Zs2aGQ8PD3PkyBFr2+nTp022bNnMc889l6D2Z555xty9e9du/8481tu3bzeSzNy5cxPs+37u/ZzE97ecOXOaS5cuWdsXLlxoJJlffvnF4X2sXr3aWCwWM3jwYGvbhQsXjCS778d4U6ZMMZLM/v377drj+3j8T5UqVcyuXbvs1smaNavp2LFjgm3++uuvRpJZvHixw/Xj8cTpdsD/5+Pjk+wsd/EX4i5cuDDVF7l6enqqQ4cOKV7/9ddft/sr2ksvvaS8efPqt99+S9X+U+q3336Tq6urevToYdfep08fGWP0+++/27XXrVvXbsSgfPny8vX1TTBDUWL7CQwMtLv+wN3dXT169NC1a9e0atWqNHg1KZPcexMUFGT3l11fX1+9/vrr2r59u86ePWt9fvxfLmNjY3Xx4kXrKZmJzarUoUMHu2vR4kf37nfMbEchYmJidPHiRRUtWlT+/v6J7qdz5852p40+++yzio2N1YkTJyRJy5Yt0507d9S9e3e79RydYv2LL75Q7ty5lSdPHlWpUkXLly9Xv379FBYW5tB2bCX1ntgeg6tXr+qff/7Rs88+qxs3bmj//v2p2tf+/fuVO3du5c6dW6VKldKkSZPUqFEjffnll5L+7avVqlXTM888Y32Oj4+POnfurOPHj2vv3r1220vvz67tMbh165b++ecfPf3005KU6lm8HH2Nqe3D8erWravcuXOrQIECat26tXx8fLRgwQLly5fPbr133nknQZ2OfD9Vr15dlStXtj4uWLCgmjZtqiVLlig2NlaxsbFaunSpmjVrpieeeMK6Xt68efXqq69qzZo1io6Ottvmm2++KVdX1xS9zsSk9bGOHylasmSJbty4keq6bL3yyivKnj17kvtMqfPnz+vVV19VcHCw+vXrZ22/efOmpMSv1/Ly8rJbJ17t2rUVERGhuXPn6u2335a7u7uuX79ut87Nmzcd2iaQFEIS8P9du3bN7peae73yyiuqWbOm3njjDQUEBKh169b64YcfHApM+fLlc2iShntn4bFYLCpatGiaXo+TmBMnTigoKCjB8ShVqpR1ua2CBQsm2Eb27Nl1+fLl++6nWLFiCU6LSGo/aene682Se2+KFi2aYP3ixYtLkvW9iIuL0/jx41WsWDF5enoqV65cyp07t3bt2pXoNQH3HrP4X0bud8xu3rypIUOGWK/FiN9PVFRUqvYTf4zv7Wu5c+e2+wXpfpo2baqIiAj9+uuv1uv5bty48UAzeiX1nuzZs0fNmzeXn5+ffH19lTt3buukC/e7/iIphQsXVkREhJYtW6Y1a9bo7NmzWrRokfX0oBMnTqhEiRIJnpdUX03vz+6lS5fUs2dPBQQEKEuWLMqdO7eCg4Mlpf4YOPoaU9uH402ZMkURERFauXKl9u7dq6NHjyaY5MPNzU358+dPUKcj30+JzWZWvHhx3bhxQxcuXNCFCxd048aNJF97XFxcguvJ4o91aqX1sQ4ODlZYWJj+97//KVeuXAoNDdWUKVNS3RdSss+UuH79uho3bqyrV69q4cKFdtcqxQf9xK4RunXrlt068QICAlS3bl299NJLmjZtmho3bqwXXnjB+seq+Oc4sk0gKVyTBEj666+/dOXKFbvzmu+VJUsWrV69WitXrtSvv/6qxYsXa86cOXr++ee1dOnSFP1VMT2+nJO64W1sbOwD/aXTEUntx9xzEXVG8fT0TPKvhfF/ZY3/q2K8B31vPvroIw0ePFgdO3bUiBEjlCNHDrm4uKhXr16JBunUHrPu3btrxowZ6tWrl6pXry4/Pz9ZLBa1bt06TffjqPz581tnrWrYsKFy5cqlbt26qXbt2tYLqJPrq4lJ7D2JiopSrVq15Ovrq+HDh6tIkSLy8vLStm3b9N5776V6lDdr1qx2s25lhAf57L788stat26d3n33XVWsWFE+Pj6Ki4tT/fr1M2w6/wftW9WqVbObbTQxtiO0mUlG/6KdkmM9duxYtW/fXgsXLtTSpUvVo0cPjRw5Uhs2bEgQNNNqn8m5c+eOWrRooV27dmnJkiXW67/i5ciRQ56enjpz5kyC58a33Xst571eeuklDRo0SAsXLtRbb70l6d8RwAfZJhCPkARI+vrrryXpvlMVu7i4qE6dOqpTp47GjRunjz76SIMGDdLKlStVt27dJH/pSa1Dhw7ZPTbG6PDhw3b3c8qePXuiNy88ceKE3akjjtRWqFAhLVu2LMFFs/GnMhUqVCjF27rffnbt2qW4uDi7X4QedD+FChXSgQMHEl0W3+7Itg8fPixjjN0xPHjwoKT/m11p3rx5ql27tr744gu750ZFRdldrPyg5s2bp3bt2mns2LHWtlu3bqX6Bpbxx+HQoUN2/eXChQsO/cX4Xm+99ZbGjx+v999/X82bN5fFYrH+JfreWh0ZMYyMjNTFixc1f/58Pffcc9b2+BnR0ktSfSqpvpqWn917Xb58WcuXL9ewYcM0ZMiQJPcpOf65d+Q1Oouj30+JHZeDBw/K29vbOrGCt7d3kq/dxcVFBQoUuG9dmeFYlytXTuXKldP777+vdevWqWbNmpo+fbo++OCDVG0vteLi4vT6669r+fLl+uGHH1SrVq0E67i4uKhcuXKJ3mR248aNeuKJJ5I9u0P6v1PnbEfMKlasqD/++CPB/ysbN26Ut7e39SwA4H4y359ngAy2YsUKjRgxQsHBwdbpZRNz6dKlBG3xN2WNH9qPv1dGWt1x/auvvrK7TmrevHk6c+aMGjRoYG0rUqSINmzYYDcT2aJFixKcHuJIbQ0bNlRsbKwmT55s1z5+/HhZLBa7/T+Ihg0b6uzZs3Yzrd29e1eTJk2Sj49Pov+xpnS7GzZs0NatW+3ao6Ki9O2336pixYrWe2qkxOnTp7VgwQLr4+joaH311Vd223F1dU3wF9a5c+fq77//TtVrSEpi+5k0aVKqp7+uW7eu3N3dNWnSJLvtTpgw4UHKlJubm/r06aN9+/Zp4cKFkmS9bs12+uXY2Fh9/vnnKd5u/F+3bWu9c+eOpk6d+kD13k/Dhg21adMmrV+/3tp2/fp1ff755ypcuHCCe3il5Wf3XokdAynx98zRz70jr9FZHP1+Wr9+vd11WqdOndLChQtVr149ubq6ytXVVfXq1dPChQvtToc8d+6cvvvuOz3zzDPy9fW9b13OPNbR0dG6e/euXVu5cuXk4uLilCmvu3fvrjlz5mjq1Kl2U3Hf66WXXtLmzZvtgtKBAwe0YsUKtWrVytr2zz//JDqC9b///U+S7EYkX3rpJZ07d87uNg3//POP5s6dqyZNmmTqe1Yhc2EkCY+V33//Xfv379fdu3d17tw5rVixQhERESpUqJB+/vnnBKdg2Ro+fLhWr16tRo0aqVChQjp//rymTp2q/PnzWy++LVKkiPz9/TV9+nRly5ZNWbNm1VNPPZXq89dz5MihZ555Rh06dNC5c+c0YcIEFS1a1G6a8jfeeEPz5s1T/fr19fLLL+vIkSP65ptvEky97EhtTZo0Ue3atTVo0CAdP35cFSpU0NKlS7Vw4UL16tXrgaZ1ttW5c2d99tlnat++vbZu3arChQtr3rx5Wrt2rSZMmHDfvyImpX///po7d66ee+45vfXWWypZsqROnz6tmTNn6syZM5oxY4ZD2ytevLg6deqkzZs3KyAgQF9++aXOnTtnt53GjRtr+PDh6tChg2rUqKE///xT3377bbIjAqnRuHFjff311/Lz81Pp0qW1fv16LVu2LNmp1pOTO3du9e3bVyNHjlTjxo3VsGFDbd++Xb///vsDj4C1b99eQ4YM0ccff6xmzZqpTJkyevrppzVgwABdunRJOXLk0OzZsxP8cpecGjVqKHv27GrXrp169Oghi8Wir7/+Ot1P7ezfv7++//57NWjQQD169FCOHDk0a9YsHTt2TD/++GOCU8LS8rN7L19fXz333HMaPXq0YmJilC9fPi1dujTR0bT4CQsGDRqk1q1by93dXU2aNEn05qeOvkZncfT7qWzZsgoNDbWbAlyShg0bZl3ngw8+sN4Hr0uXLnJzc9Nnn32m27dva/To0Smqy5nHesWKFerWrZtatWql4sWL6+7du/r666/l6uqqli1bOrStBzVhwgRNnTpV1atXl7e3t939ByWpefPm1mPSpUsX/fe//1WjRo3Ut29fubu7a9y4cQoICLDe7kGSvvnmG02fPt06ucbVq1e1ZMkSRUREqEmTJtZ7bEn/hqSnn35aHTp00N69e5UrVy5NnTpVsbGxdu85cF8ZPZ0e4Azx07bG/3h4eJjAwEDzwgsvmE8//dRuqt54904Bvnz5ctO0aVMTFBRkPDw8TFBQkGnTpo05ePCg3fMWLlxoSpcubdzc3Oym7a1Vq5YpU6ZMovUlNQX4999/bwYMGGDy5MljsmTJYho1amROnDiR4Pljx441+fLlM56enqZmzZpmy5YtCbaZXG2JTZV89epV07t3bxMUFGTc3d1NsWLFzCeffGI3TbQxSU+3ndT0xvc6d+6c6dChg8mVK5fx8PAw5cqVS3SackemADfGmL/++su88cYbJl++fMbNzc3kyJHDNG7c2GzYsCHBusm9N/H7XbJkiSlfvrzx9PQ0JUuWTDDV7q1bt0yfPn1M3rx5TZYsWUzNmjXN+vXrk3xv731+YtM8J+by5cvW4+Xj42NCQ0PN/v37ExzvpKa9T2y67djYWDNs2DBr7SEhIWb37t0pfg+T6gPGGBMeHm63vyNHjpi6desaT09PExAQYAYOHGgiIiISnQI8qfdk7dq15umnnzZZsmQxQUFBpl+/fmbJkiUJtuHIFOBJ7cvWkSNHzEsvvWT8/f2Nl5eXqVatmlm0aJHdOunx2U2sb/z111+mefPmxt/f3/j5+ZlWrVqZ06dPG0lm6NChdvsYMWKEyZcvn3FxcbGbojqx99eR15jaPpySWzIY8+/7lzVr1kSXOfr99M0335hixYoZT09PU6lSJbt+Em/btm0mNDTU+Pj4GG9vb1O7dm2zbt06h2p31rE+evSo6dixoylSpIjx8vIyOXLkMLVr1zbLli1LtE5bSU0Bbjt9f7zE+ldi27P9//ben3unSD916pR56aWXjK+vr/Hx8TGNGzc2hw4dsltn8+bNplWrVqZgwYLG09PTZM2a1Tz55JNm3LhxJiYmJkENly5dMp06dTI5c+Y03t7eplatWvftb8C9LMY46cpqAAAeMZGRkapdu7bmzp2rl156ydnlPPYsFou6du2a4NQ8ALifzDF2DgAAAACZBCEJAAAAAGwQkgAAAADABtckAQAAAIANRpIAAAAAwAYhCQAAAABsPPI3k42Li9Pp06eVLVs2WSwWZ5cDAAAAwEmMMbp69aqCgoKSvXHzIx+STp8+rQIFCji7DAAAAACZxKlTp5Q/f/4klz/yISlbtmyS/j0Qvr6+Tq4GAAAAgLNER0erQIEC1oyQlEc+JMWfYufr60tIAgAAAHDfy3CYuAEAAAAAbBCSAAAAAMAGIQkAAAAAbDzy1yQBAAAAmYExRnfv3lVsbKyzS3lkubq6ys3N7YFv/UNIAgAAANLZnTt3dObMGd24ccPZpTzyvL29lTdvXnl4eKR6G4QkAAAAIB3FxcXp2LFjcnV1VVBQkDw8PB54pAMJGWN0584dXbhwQceOHVOxYsWSvWFscghJAAAAQDq6c+eO4uLiVKBAAXl7ezu7nEdalixZ5O7urhMnTujOnTvy8vJK1XaYuAEAAADIAKkd1YBj0uI4804BAAAAgA1CEgAAAADYICQBAAAASHOFCxfWhAkTnF1Gqjh14oaRI0dq/vz52r9/v7JkyaIaNWro448/VokSJazrhISEaNWqVXbPe+uttzR9+vSMLhcAAABIM+HhmX9/ISEhqlixYoKwM3PmTPXq1UtRUVFpUVqm49SRpFWrVqlr167asGGDIiIiFBMTo3r16un69et267355ps6c+aM9Wf06NFOqhgAAABAcu7cuePsEh6YU0PS4sWL1b59e5UpU0YVKlTQzJkzdfLkSW3dutVuPW9vbwUGBlp/fH19nVQxAAAAAFvt27dXs2bN9OGHHyooKMjurLCrV6+qTZs2ypo1q/Lly6cpU6bYPXfcuHEqV66csmbNqgIFCqhLly66du2adfnMmTPl7++vJUuWqFSpUvLx8VH9+vV15syZdH1NmeqapCtXrkiScuTIYdf+7bffKleuXCpbtqwGDBiQ7J2Kb9++rejoaLsfAAAAAOln+fLlOnDggCIiIrRo0SJr+yeffKIKFSpo+/bt6t+/v3r27KmIiAjrchcXF02cOFF79uzRrFmztGLFCvXr189u2zdu3NCYMWP09ddfa/Xq1Tp58qT69u2brq8n09xMNi4uTr169VLNmjVVtmxZa/urr76qQoUKKSgoSLt27dJ7772nAwcOaP78+YluZ+TIkRo2bFhGlY1HVHhkuLNLsAoPCXd2CQAA2Mnoa2mSk5lqeZxlzZpV//vf/+Th4WHXXrNmTfXv31+SVLx4ca1du1bjx4/XCy+8IEnq1auXdd3ChQvrgw8+0Ntvv62pU6da22NiYjR9+nQVKVJEktStWzcNHz48XV9PpglJXbt21e7du7VmzRq79s6dO1v/Xa5cOeXNm1d16tTRkSNHrAfK1oABAxQWFmZ9HB0drQIFCqRf4QAAAMBjrly5cgkCkiRVr149wWPbSSCWLVumkSNHav/+/YqOjtbdu3d169Yt3bhxQ97e3pL+vfTG9vf+vHnz6vz58+nzQv6/THG6Xbdu3bRo0SKtXLlS+fPnT3bdp556SpJ0+PDhRJd7enrK19fX7gcAAACA43x9fa2XxNiKioqSn5+f9XHWrFkd3vbx48fVuHFjlS9fXj/++KO2bt1qvWbJdvIHd3d3u+dZLBYZYxzenyOcOpJkjFH37t21YMECRUZGKjg4+L7P2bFjh6R/EyQAAACA9FOiRAktXbo0Qfu2bdtUvHjx+z5/w4YNCR6XKlVKkrR161bFxcVp7NixcnH5d+zmhx9+SIOqH5xTQ1LXrl313XffaeHChcqWLZvOnj0rSfLz81OWLFl05MgRfffdd2rYsKFy5sypXbt2qXfv3nruuedUvnx5Z5YOAAAAPPLeeecdTZ48WT169NAbb7whT09P/frrr/r+++/1yy+/3Pf5a9eu1ejRo9WsWTNFRERo7ty5+vXXXyVJRYsWVUxMjCZNmqQmTZpo7dq1meZeqE4NSdOmTZP0702qbM2YMUPt27eXh4eHli1bpgkTJuj69esqUKCAWrZsqffff98J1QIAAABp52GYdOKJJ57Q6tWrNWjQINWtW1d37txRyZIlNXfuXNWvX/++z+/Tp4+2bNmiYcOGydfXV+PGjVNoaKgkqUKFCho3bpw+/vhjDRgwQM8995xGjhyp119/Pb1f1n1ZTHqf0Odk0dHR8vPz05UrV7g+CSnG7HYAACQtM/1yn5lqScqtW7d07NgxBQcHy8vLy9nlPPKSO94pzQaZYuIGAAAAAMgsCEkAAAAAYIOQBAAAAAA2CEkAAAAAYIOQBAAAAAA2CEkAAAAAYIOQBAAAAAA2CEkAAAAAYIOQBAAAAAA23JxdAAAAAPA4Co8Mz9j9hWTs/h5U+/btFRUVpZ9++inD981IEgAAAIBEtW/fXhaLRRaLRe7u7goODla/fv1069YtZ5eWrhhJAgAAAJCk+vXra8aMGYqJidHWrVvVrl07WSwWffzxx6naXkxMjNzd3dO4yrTFSBIAAACAJHl6eiowMFAFChRQs2bNVLduXUVEREiSChcurAkTJtitX7FiRYWHh1sfWywWTZs2TS+++KKyZs2qDz/8ULGxserUqZOCg4OVJUsWlShRQp9++mkGvqrkMZIEAAAAIEV2796tdevWqVChQg49Lzw8XKNGjdKECRPk5uamuLg45c+fX3PnzlXOnDm1bt06de7cWXnz5tXLL7+cTtWnHCEJAAAAQJIWLVokHx8f3b17V7dv35aLi4smT57s0DZeffVVdejQwa5t2LBh1n8HBwdr/fr1+uGHHwhJAAAAADK32rVra9q0abp+/brGjx8vNzc3tWzZ0qFtVKlSJUHblClT9OWXX+rkyZO6efOm7ty5o4oVK6ZR1Q+Ga5IAAAAAJClr1qwqWrSoKlSooC+//FIbN27UF198IUlycXGRMcZu/ZiYmES3YWv27Nnq27evOnXqpKVLl2rHjh3q0KGD7ty5k34vxAGMJAEAAABIERcXFw0cOFBhYWF69dVXlTt3bp05c8a6PDo6WseOHbvvdtauXasaNWqoS5cu1rYjR46kS82pwUgSAAAAgBRr1aqVXF1dNWXKFD3//PP6+uuv9ccff+jPP/9Uu3bt5Orqet9tFCtWTFu2bNGSJUt08OBBDR48WJs3b86A6lOGkSQAAADACcJDwp1dQqq4ubmpW7duGj16tA4dOqRjx46pcePG8vPz04gRI1I0kvTWW29p+/bteuWVV2SxWNSmTRt16dJFv//+ewa8gvuzmHtPInzEREdHy8/PT1euXJGvr6+zy8FDIjwy3NklWD2sX6AAgEeXzS1wnC4z1ZKUW7du6dixYwoODpaXl5ezy3nkJXe8U5oNON0OAAAAAGxwuh0yjcw0egM4KjP1X0Yf4ajM9Jf4zFQLHg6Zqc9kplrwYBhJAgAAAAAbhCQAAAAAsEFIAgAAADLAIz5fWqaRFseZkAQAAACkI3d3d0nSjRs3nFzJ4yH+OMcf99Rg4gYAAAAgHbm6usrf31/nz5+XJHl7e8tisTi5qkePMUY3btzQ+fPn5e/vn6Kb2iaFkAQAAACks8DAQEmyBiWkH39/f+vxTi1CEgAAAJDOLBaL8ubNqzx58igmJsbZ5Tyy3N3dH2gEKR4hCQAAAMggrq6uafJLPNIXEzcAAAAAgA1CEgAAAADYICQBAAAAgA1CEgAAAADYICQBAAAAgA1CEgAAAADYYArwDBYeGe7sEqzCQ8KdXQIeMvRfAI+T8HBnV2Avs9WDzC2z9ZfMVs/9MJIEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgw83ZBQBIXnhkuLNLAABkAuHhzq4AeHwwkgQAAAAANghJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANpwakkaOHKmqVasqW7ZsypMnj5o1a6YDBw7YrXPr1i117dpVOXPmlI+Pj1q2bKlz5845qWIAAAAAjzqnhqRVq1apa9eu2rBhgyIiIhQTE6N69erp+vXr1nV69+6tX375RXPnztWqVat0+vRptWjRwolVAwAAAHiUuTlz54sXL7Z7PHPmTOXJk0dbt27Vc889pytXruiLL77Qd999p+eff16SNGPGDJUqVUobNmzQ008/7YyyAQAAADzCMtU1SVeuXJEk5ciRQ5K0detWxcTEqG7dutZ1SpYsqYIFC2r9+vWJbuP27duKjo62+wEAAACAlMo0ISkuLk69evVSzZo1VbZsWUnS2bNn5eHhIX9/f7t1AwICdPbs2US3M3LkSPn5+Vl/ChQokN6lAwAAAHiEZJqQ1LVrV+3evVuzZ89+oO0MGDBAV65csf6cOnUqjSoEAAAA8Dhw6jVJ8bp166ZFixZp9erVyp8/v7U9MDBQd+7cUVRUlN1o0rlz5xQYGJjotjw9PeXp6ZneJQMAAAB4RDl1JMkYo27dumnBggVasWKFgoOD7ZZXrlxZ7u7uWr58ubXtwIEDOnnypKpXr57R5QIAAAB4DDh1JKlr16767rvvtHDhQmXLls16nZGfn5+yZMkiPz8/derUSWFhYcqRI4d8fX3VvXt3Va9enZntAAAAAKQLp4akadOmSZJCQkLs2mfMmKH27dtLksaPHy8XFxe1bNlSt2/fVmhoqKZOnZrBlQIAAAB4XDg1JBlj7ruOl5eXpkyZoilTpmRARQAAAAAed5lmdjsAAAAAyAwISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADYISQAAAABgg5AEAAAAADbcnF0AACBthUeGO7sEq/CQcGeXkGmFhzu7AgBAUhweSVq8eLHWrFljfTxlyhRVrFhRr776qi5fvpymxQEAAABARnM4JL377ruKjo6WJP3555/q06ePGjZsqGPHjiksLCzNCwQAAACAjOTw6XbHjh1T6dKlJUk//vijGjdurI8++kjbtm1Tw4YN07xAAAAAAMhIDo8keXh46MaNG5KkZcuWqV69epKkHDlyWEeYAAAAAOBh5fBI0jPPPKOwsDDVrFlTmzZt0pw5cyRJBw8eVP78+dO8QAAAAADISA6PJE2ePFlubm6aN2+epk2bpnz58kmSfv/9d9WvXz/NCwQAAACAjOTwSFLBggW1aNGiBO3jx49Pk4IAAAAAwJlSdTPZI0eO6P3331ebNm10/vx5Sf+OJO3ZsydNiwMAAACAjOZwSFq1apXKlSunjRs3av78+bp27ZokaefOnRo6dGiaFwgAAAAAGcnhkNS/f3998MEHioiIkIeHh7X9+eef14YNG9K0OAAAAADIaA6HpD///FPNmzdP0J4nTx79888/aVIUAAAAADiLwyHJ399fZ86cSdC+fft260x3AAAAAPCwcjgktW7dWu+9957Onj0ri8WiuLg4rV27Vn379tXrr7+eHjUCAAAAQIZxeArwjz76SF27dlWBAgUUGxur0qVLKzY2Vq+++qref//99KgRAPCQCg93dgU2QsKdXcE9wp1dAAAgCQ6HJA8PD/33v//V4MGDtXv3bl27dk2VKlVSsWLF0qM+AAAAAMhQDoekeAULFlTBggXTshYAAAAAcLoUhaSwsDCNGDFCWbNmVVhYWLLrjhs3Lk0KAwAAAABnSFFI2r59u2JiYiRJ27Ztk8ViSXS9pNoBAAAA4GGRopC0cuVK678jIyPTqxYAAAAAcDqHpgCPiYmRm5ubdu/enV71AAAAAIBTORSS3N3dVbBgQcXGxqZXPQAAAADgVA7fTHbQoEEaOHCgLl26lB71AAAAAIBTOTwF+OTJk3X48GEFBQWpUKFCypo1q93ybdu2pVlxAAAAAJDRHA5JTZs2ZRY7AAAAAI8sh0NSeHh4OpQBAAAAAJmDw9ckPfHEE7p48WKC9qioKD3xxBNpUhQAAAAAOIvDIen48eOJzm53+/Zt/fXXX2lSFAAAAAA4S4pPt/v555+t/16yZIn8/Pysj2NjY7V8+XIFBwenbXUAAAAAkMFSHJKaNWsmSbJYLGrXrp3dMnd3dxUuXFhjx45N0+KQvsIjw51dAoB0EBnp7Ar+T4izC8jEIhXu7BKsQjJRLcDDjEv3Hx0pDklxcXGSpODgYG3evFm5cuVKt6IAAAAAwFkcnt3u2LFj6VEHAAAAAGQKDockSVq+fLmWL1+u8+fPW0eY4n355ZdpUhgAAAAAOIPDIWnYsGEaPny4qlSporx583JjWQAAAACPFIdD0vTp0zVz5kz95z//SY96AAAAAMCpHL5P0p07d1SjRo30qAUAAAAAnM7hkPTGG2/ou+++S49aAAAAAMDpHD7d7tatW/r888+1bNkylS9fXu7u7nbLx40bl2bFAQAAAEBGczgk7dq1SxUrVpQk7d69224ZkzgAAAAAeNg5HJJWrlyZHnUAAAAAQKbg8DVJaWn16tVq0qSJgoKCZLFY9NNPP9ktb9++vSwWi91P/fr1nVMsAAAAgMeCwyNJtWvXTva0uhUrVqR4W9evX1eFChXUsWNHtWjRItF16tevrxkzZlgfe3p6prxYAAAAAHCQwyEp/nqkeDExMdqxY4d2796tdu3aObStBg0aqEGDBsmu4+npqcDAQEfLBAAAAIBUcTgkjR8/PtH28PBwXbt27YELuldkZKTy5Mmj7Nmz6/nnn9cHH3ygnDlzJrn+7du3dfv2bevj6OjoNK8JAAAAwKPL4ZCUlNdee03VqlXTmDFj0mqTql+/vlq0aKHg4GAdOXJEAwcOVIMGDbR+/Xq5urom+pyRI0dq2LBhaVYDACD1IhXu7BL+T6SzCwAAPCzSLCStX79eXl5eabU5SVLr1q2t/y5XrpzKly+vIkWKKDIyUnXq1En0OQMGDFBYWJj1cXR0tAoUKJCmdQEAAAB4dDkcku6dYMEYozNnzmjLli0aPHhwmhWWmCeeeEK5cuXS4cOHkwxJnp6eTO4AAAAAINUcDkl+fn52j11cXFSiRAkNHz5c9erVS7PCEvPXX3/p4sWLyps3b7ruBwAAAMDjy+GQZDsd94O6du2aDh8+bH187Ngx7dixQzly5FCOHDk0bNgwtWzZUoGBgTpy5Ij69eunokWLKjQ0NM1qAAAAAABbqb4maevWrdq3b58kqUyZMqpUqZLD29iyZYtq165tfRx/LVG7du00bdo07dq1S7NmzVJUVJSCgoJUr149jRgxgtPpAAAAAKQbh0PS+fPn1bp1a0VGRsrf31+SFBUVpdq1a2v27NnKnTt3ircVEhIiY0ySy5csWeJoeQAAAADwQFwcfUL37t119epV7dmzR5cuXdKlS5e0e/duRUdHq0ePHulRIwAAAABkGIdHkhYvXqxly5apVKlS1rbSpUtrypQp6T5xAwAAAACkN4dHkuLi4uTu7p6g3d3dXXFxcWlSFAAAAAA4i8Mh6fnnn1fPnj11+vRpa9vff/+t3r17J3nvIgAAAAB4WDgckiZPnqzo6GgVLlxYRYoUUZEiRRQcHKzo6GhNmjQpPWoEAAAAgAzj8DVJBQoU0LZt27Rs2TLt379fklSqVCnVrVs3zYsDAAAAgIyWqvskWSwWvfDCC3rhhRfSuh4AAAAAcKoUn263YsUKlS5dWtHR0QmWXblyRWXKlNEff/yRpsUBAAAAQEZLcUiaMGGC3nzzTfn6+iZY5ufnp7feekvjxo1L0+IAAAAAIKOlOCTt3LlT9evXT3J5vXr1tHXr1jQpCgAAAACcJcUh6dy5c4neHymem5ubLly4kCZFAQAAAICzpDgk5cuXT7t3705y+a5du5Q3b940KQoAAAAAnCXFIalhw4YaPHiwbt26lWDZzZs3NXToUDVu3DhNiwMAAACAjJbiKcDff/99zZ8/X8WLF1e3bt1UokQJSdL+/fs1ZcoUxcbGatCgQelWKAAAAABkhBSHpICAAK1bt07vvPOOBgwYIGOMpH/vmRQaGqopU6YoICAg3QoFAAAAgIzg0M1kCxUqpN9++02XL1/W4cOHZYxRsWLFlD179vSqDwAAAAAylEMhKV727NlVtWrVtK4FAAAAAJwuxRM3AAAAAMDjgJAEAAAAADYISQAAAABgI0Uh6cknn9Tly5clScOHD9eNGzfStSgAAAAAcJYUhaR9+/bp+vXrkqRhw4bp2rVr6VoUAAAAADhLima3q1ixojp06KBnnnlGxhiNGTNGPj4+ia47ZMiQNC0QABITHhnu7BIApIPwcGdXAAApDEkzZ87U0KFDtWjRIlksFv3+++9yc0v4VIvFQkgCAAAA8FBLUUgqUaKEZs+eLUlycXHR8uXLlSdPnnQtDAAAAACcweGbycbFxaVHHQAAAACQKTgckiTpyJEjmjBhgvbt2ydJKl26tHr27KkiRYqkaXEAAAAAkNEcvk/SkiVLVLp0aW3atEnly5dX+fLltXHjRpUpU0YRERHpUSMAAAAAZBiHR5L69++v3r17a9SoUQna33vvPb3wwgtpVhwAAAAAZDSHR5L27dunTp06JWjv2LGj9u7dmyZFAQAAAICzOByScufOrR07diRo37FjBzPeAQAAAHjoOXy63ZtvvqnOnTvr6NGjqlGjhiRp7dq1+vjjjxUWFpbmBQIAAABARnI4JA0ePFjZsmXT2LFjNWDAAElSUFCQwsPD1aNHjzQvEAAAAAAyksMhyWKxqHfv3urdu7euXr0qScqWLVuaFwYAAAAAzpCq+yTFIxwBAAAAeNQ4PHEDAAAAADzKCEkAAAAAYIOQBAAAAAA2HApJMTExqlOnjg4dOpRe9QAAAACAUzkUktzd3bVr1670qgUAAAAAnM7h0+1ee+01ffHFF+lRCwAAAAA4ncNTgN+9e1dffvmlli1bpsqVKytr1qx2y8eNG5dmxQEAAABARnM4JO3evVtPPvmkJOngwYN2yywWS9pUBQAAAABO4nBIWrlyZXrUAQAAAACZQqqnAD98+LCWLFmimzdvSpKMMWlWFAAAAAA4i8Mh6eLFi6pTp46KFy+uhg0b6syZM5KkTp06qU+fPmleIAAAAABkJIdDUu/eveXu7q6TJ0/K29vb2v7KK69o8eLFaVocAAAAAGQ0h69JWrp0qZYsWaL8+fPbtRcrVkwnTpxIs8IAAAAAwBkcHkm6fv263QhSvEuXLsnT0zNNigIAAAAAZ3E4JD377LP66quvrI8tFovi4uI0evRo1a5dO02LAwAAAICM5vDpdqNHj1adOnW0ZcsW3blzR/369dOePXt06dIlrV27Nj1qBAAAAIAM43BIKlu2rA4ePKjJkycrW7Zsunbtmlq0aKGuXbsqb9686VEjACQQGensCuyFhDi7AuDREKlwZ5dgFZKJagGQsRwOSZLk5+enQYMGpXUtAAAAAOB0qQpJly9f1hdffKF9+/ZJkkqXLq0OHTooR44caVocAAAAAGQ0hyduWL16tQoXLqyJEyfq8uXLunz5siZOnKjg4GCtXr06PWoEAAAAgAzj8EhS165d9corr2jatGlydXWVJMXGxqpLly7q2rWr/vzzzzQvEgAAAAAyisMjSYcPH1afPn2sAUmSXF1dFRYWpsOHD6dpcQAAAACQ0RwOSU8++aT1WiRb+/btU4UKFdKkKAAAAABwlhSdbrdr1y7rv3v06KGePXvq8OHDevrppyVJGzZs0JQpUzRq1Kj0qRIAAAAAMkiKQlLFihVlsVhkjLG29evXL8F6r776ql555ZW0qw4AAAAAMliKQtKxY8fSuw4AAAAAyBRSFJIKFSqU3nUAAAAAQKaQqpvJnj59WmvWrNH58+cVFxdnt6xHjx4p3s7q1av1ySefaOvWrTpz5owWLFigZs2aWZcbYzR06FD997//VVRUlGrWrKlp06apWLFiqSkbAAAAAO7L4ZA0c+ZMvfXWW/Lw8FDOnDllsVisyywWi0Mh6fr166pQoYI6duyoFi1aJFg+evRoTZw4UbNmzVJwcLAGDx6s0NBQ7d27V15eXo6WDgAAAAD35XBIGjx4sIYMGaIBAwbIxcXhGcTtNGjQQA0aNEh0mTFGEyZM0Pvvv6+mTZtKkr766isFBATop59+UuvWrR9o3wAAAACQGIdTzo0bN9S6desHDkj3c+zYMZ09e1Z169a1tvn5+empp57S+vXrk3ze7du3FR0dbfcDAAAAACnlcNLp1KmT5s6dmx612Dl79qwkKSAgwK49ICDAuiwxI0eOlJ+fn/WnQIEC6VonAAAAgEeLw6fbjRw5Uo0bN9bixYtVrlw5ubu72y0fN25cmhWXGgMGDFBYWJj1cXR0NEEJAAAAQIqlKiQtWbJEJUqUkKQEEzeklcDAQEnSuXPnlDdvXmv7uXPnVLFixSSf5+npKU9PzzSrAwAAAMDjxeGQNHbsWH355Zdq3759OpTzf4KDgxUYGKjly5dbQ1F0dLQ2btyod955J133DQAAAODx5XBI8vT0VM2aNdNk59euXdPhw4etj48dO6YdO3YoR44cKliwoHr16qUPPvhAxYoVs04BHhQUZHcvJQAAAABISw5P3NCzZ09NmjQpTXa+ZcsWVapUSZUqVZIkhYWFqVKlShoyZIgkqV+/furevbs6d+6sqlWr6tq1a1q8eDH3SAIAAACQbhweSdq0aZNWrFihRYsWqUyZMgkmbpg/f36KtxUSEiJjTJLLLRaLhg8fruHDhztaJgAAAACkisMhyd/fXy1atEiPWgAAAADA6RwOSTNmzEiPOgAAAAAgU3D4miQAAAAAeJQ5PJIUHByc7P2Qjh49+kAFAQAAAIAzORySevXqZfc4JiZG27dv1+LFi/Xuu++mVV0AAAAA4BQOh6SePXsm2j5lyhRt2bLlgQsCAAAAAGdKs2uSGjRooB9//DGtNgcAAAAATpFmIWnevHnKkSNHWm0OAAAAAJzC4dPtKlWqZDdxgzFGZ8+e1YULFzR16tQ0LQ5A5hIZ6ewKACDjRCrc2SXYCclk9QCPModDUrNmzeweu7i4KHfu3AoJCVHJkiXTqi4AAAAAcAqHQ9LQoUPTow4AAAAAyBS4mSwAAAAA2EjxSJKLi0uyN5GVJIvFort37z5wUQAAAADgLCkOSQsWLEhy2fr16zVx4kTFxcWlSVEAAAAA4CwpDklNmzZN0HbgwAH1799fv/zyi9q2bavhw4enaXEAAAAAkNFSdU3S6dOn9eabb6pcuXK6e/euduzYoVmzZqlQoUJpXR8AAAAAZCiHQtKVK1f03nvvqWjRotqzZ4+WL1+uX375RWXLlk2v+gAAAAAgQ6X4dLvRo0fr448/VmBgoL7//vtET78DAAAAgIddikNS//79lSVLFhUtWlSzZs3SrFmzEl1v/vz5aVYcAAAAAGS0FIek119//b5TgAMAAADAwy7FIWnmzJnpWAYAAAAAZA6pmt0OAAAAAB5VKR5JAuAckZHOrgAAkBlEKtzZJViFZKJagPTASBIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2CAkAQAAAIANQhIAAAAA2HBzdgFAZhQZ6ewKAADIvCIV7uwSrEIyUS14dDCSBAAAAAA2CEkAAAAAYIOQBAAAAAA2CEkAAAAAYIOQBAAAAAA2CEkAAAAAYIOQBAAAAAA2CEkAAAAAYIOQBAAAAAA2MnVICg8Pl8VisfspWbKks8sCAAAA8Ahzc3YB91OmTBktW7bM+tjNLdOXDAAAAOAhlukTh5ubmwIDA51dBgAAAIDHRKY+3U6SDh06pKCgID3xxBNq27atTp48mez6t2/fVnR0tN0PAAAAAKRUph5JeuqppzRz5kyVKFFCZ86c0bBhw/Tss89q9+7dypYtW6LPGTlypIYNG5bBlQJ43EVGOrsCIPUiFe7sEgAgU8nUI0kNGjRQq1atVL58eYWGhuq3335TVFSUfvjhhySfM2DAAF25csX6c+rUqQysGAAAAMDDLlOPJN3L399fxYsX1+HDh5Ncx9PTU56enhlYFQAAAIBHSaYeSbrXtWvXdOTIEeXNm9fZpQAAAAB4RGXqkNS3b1+tWrVKx48f17p169S8eXO5urqqTZs2zi4NAAAAwCMqU59u99dff6lNmza6ePGicufOrWeeeUYbNmxQ7ty5nV0aAAAAgEdUpg5Js2fPdnYJAAAAAB4zmfp0OwAAAADIaIQkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG4QkAAAAALBBSAIAAAAAG27OLuBxExnp7Ar+T0iIsysAAABAeohUuLNLuEe4swtwCCNJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANghJAAAAAGCDkAQAAAAANtycXQCcJzLS2RXYCwlxdgUAAACpF6lwZ5eANMJIEgAAAADYICQBAAAAgA1CEgAAAADYICQBAAAAgA1CEgAAAADYICQBAAAAgA1CEgAAAADYICQBAAAAgA1CEgAAAADYICQBAAAAgI2HIiRNmTJFhQsXlpeXl5566ilt2rTJ2SUBAAAAeERl+pA0Z84chYWFaejQodq2bZsqVKig0NBQnT9/3tmlAQAAAHgEZfqQNG7cOL355pvq0KGDSpcurenTp8vb21tffvmls0sDAAAA8Ahyc3YByblz5462bt2qAQMGWNtcXFxUt25drV+/PtHn3L59W7dv37Y+vnLliiQpOjo6fYtNobs2tcHe7evOruD/3OVtAgDgoXBbmeN3PEm6K36BSEpm+V08vg5jTLLrZeqQ9M8//yg2NlYBAQF27QEBAdq/f3+izxk5cqSGDRuWoL1AgQLpUiPSzlpnFwAAAB46azXK2SUgBfxGZa736erVq/Lz80tyeaYOSakxYMAAhYWFWR/HxcXp0qVLypkzpywWixMr+ze5FihQQKdOnZKvr69Ta8HDgT4DR9Fn4Cj6DBxFn4GjMlOfMcbo6tWrCgoKSna9TB2ScuXKJVdXV507d86u/dy5cwoMDEz0OZ6envL09LRr8/f3T68SU8XX19fpHQQPF/oMHEWfgaPoM3AUfQaOyix9JrkRpHiZeuIGDw8PVa5cWcuXL7e2xcXFafny5apevboTKwMAAADwqMrUI0mSFBYWpnbt2qlKlSqqVq2aJkyYoOvXr6tDhw7OLg0AAADAIyjTh6RXXnlFFy5c0JAhQ3T27FlVrFhRixcvTjCZw8PA09NTQ4cOTXA6IJAU+gwcRZ+Bo+gzcBR9Bo56GPuMxdxv/jsAAAAAeIxk6muSAAAAACCjEZIAAAAAwAYhCQAAAABsEJIAAAAAwAYhKQNNmTJFhQsXlpeXl5566ilt2rTJ2SUhExg5cqSqVq2qbNmyKU+ePGrWrJkOHDhgt86tW7fUtWtX5cyZUz4+PmrZsmWCmyzj8TVq1ChZLBb16tXL2kafwb3+/vtvvfbaa8qZM6eyZMmicuXKacuWLdblxhgNGTJEefPmVZYsWVS3bl0dOnTIiRXDmWJjYzV48GAFBwcrS5YsKlKkiEaMGCHb+b7oM4+31atXq0mTJgoKCpLFYtFPP/1ktzwl/ePSpUtq27atfH195e/vr06dOunatWsZ+CqSRkjKIHPmzFFYWJiGDh2qbdu2qUKFCgoNDdX58+edXRqcbNWqVeratas2bNigiIgIxcTEqF69erp+/bp1nd69e+uXX37R3LlztWrVKp0+fVotWrRwYtXILDZv3qzPPvtM5cuXt2unz8DW5cuXVbNmTbm7u+v333/X3r17NXbsWGXPnt26zujRozVx4kRNnz5dGzduVNasWRUaGqpbt245sXI4y8cff6xp06Zp8uTJ2rdvnz7++GONHj1akyZNsq5Dn3m8Xb9+XRUqVNCUKVMSXZ6S/tG2bVvt2bNHERERWrRokVavXq3OnTtn1EtInkGGqFatmunatav1cWxsrAkKCjIjR450YlXIjM6fP28kmVWrVhljjImKijLu7u5m7ty51nX27dtnJJn169c7q0xkAlevXjXFihUzERERplatWqZnz57GGPoMEnrvvffMM888k+TyuLg4ExgYaD755BNrW1RUlPH09DTff/99RpSITKZRo0amY8eOdm0tWrQwbdu2NcbQZ2BPklmwYIH1cUr6x969e40ks3nzZus6v//+u7FYLObvv//OsNqTwkhSBrhz5462bt2qunXrWttcXFxUt25drV+/3omVITO6cuWKJClHjhySpK1btyomJsau/5QsWVIFCxak/zzmunbtqkaNGtn1DYk+g4R+/vlnValSRa1atVKePHlUqVIl/fe//7UuP3bsmM6ePWvXZ/z8/PTUU0/RZx5TNWrU0PLly3Xw4EFJ0s6dO7VmzRo1aNBAEn0GyUtJ/1i/fr38/f1VpUoV6zp169aVi4uLNm7cmOE138vN2QU8Dv755x/FxsYqICDArj0gIED79+93UlXIjOLi4tSrVy/VrFlTZcuWlSSdPXtWHh4e8vf3t1s3ICBAZ8+edUKVyAxmz56tbdu2afPmzQmW0Wdwr6NHj2ratGkKCwvTwIEDtXnzZvXo0UMeHh5q166dtV8k9v8Ufebx1L9/f0VHR6tkyZJydXVVbGysPvzwQ7Vt21aS6DNIVkr6x9mzZ5UnTx675W5ubsqRI0em6EOEJCAT6dq1q3bv3q01a9Y4uxRkYqdOnVLPnj0VEREhLy8vZ5eDh0BcXJyqVKmijz76SJJUqVIl7d69W9OnT1e7du2cXB0yox9++EHffvutvvvuO5UpU0Y7duxQr169FBQURJ/BY4HT7TJArly55OrqmmBmqXPnzikwMNBJVSGz6datmxYtWqSVK1cqf/781vbAwEDduXNHUVFRduvTfx5fW7du1fnz5/Xkk0/Kzc1Nbm5uWrVqlSZOnCg3NzcFBATQZ2Anb968Kl26tF1bqVKldPLkSUmy9gv+n0K8d999V/3791fr1q1Vrlw5/ec//1Hv3r01cuRISfQZJC8l/SMwMDDBBGZ3797VpUuXMkUfIiRlAA8PD1WuXFnLly+3tsXFxWn58uWqXr26EytDZmCMUbdu3bRgwQKtWLFCwcHBdssrV64sd3d3u/5z4MABnTx5kv7zmKpTp47+/PNP7dixw/pTpUoVtW3b1vpv+gxs1axZM8GtBQ4ePKhChQpJkoKDgxUYGGjXZ6Kjo7Vx40b6zGPqxo0bcnGx/zXR1dVVcXFxkugzSF5K+kf16tUVFRWlrVu3WtdZsWKF4uLi9NRTT2V4zQk4e+aIx8Xs2bONp6enmTlzptm7d6/p3Lmz8ff3N2fPnnV2aXCyd955x/j5+ZnIyEhz5swZ68+NGzes67z99tumYMGCZsWKFWbLli2mevXqpnr16k6sGpmN7ex2xtBnYG/Tpk3Gzc3NfPjhh+bQoUPm22+/Nd7e3uabb76xrjNq1Cjj7+9vFi5caHbt2mWaNm1qgoODzc2bN51YOZylXbt2Jl++fGbRokXm2LFjZv78+SZXrlymX79+1nXoM4+3q1evmu3bt5vt27cbSWbcuHFm+/bt5sSJE8aYlPWP+vXrm0qVKpmNGzeaNWvWmGLFipk2bdo46yXZISRloEmTJpmCBQsaDw8PU61aNbNhwwZnl4RMQFKiPzNmzLCuc/PmTdOlSxeTPXt24+3tbZo3b27OnDnjvKKR6dwbkugzuNcvv/xiypYtazw9PU3JkiXN559/brc8Li7ODB482AQEBBhPT09Tp04dc+DAASdVC2eLjo42PXv2NAULFjReXl7miSeeMIMGDTK3b9+2rkOfebytXLky0d9f2rVrZ4xJWf+4ePGiadOmjfHx8TG+vr6mQ4cO5urVq054NQlZjLG5dTIAAAAAPOa4JgkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAAAAAbBCSAAAAAMAGIQkAkEBISIh69eqVabbzuAgPD1fFihUzZF/Lly9XqVKlFBsbm+ptLF68WBUrVlRcXFwaVgYAzkdIAoBMpH379rJYLLJYLPLw8FDRokU1fPhw3b1719mlJSsyMlIWi0VRUVF27fPnz9eIESPSdd/Hjx+3HjOLxaKcOXOqXr162r59e7ru90FZLBb99NNPdm19+/bV8uXLM2T//fr10/vvvy9XV1dJ0vbt21WpUiX5+PioSZMmunTpknXdu3fvqnLlytq0aZPdNurXry93d3d9++23GVIzAGQUQhIAZDL169fXmTNndOjQIfXp00fh4eH65JNPnF1WquTIkUPZsmXLkH0tW7ZMZ86c0ZIlS3Tt2jU1aNAgQWiLFxMTkyE1JebOnTtJLvPx8VHOnDnTvYY1a9boyJEjatmypbXtjTfe0PPPP69t27bpypUr+uijj6zLxo4dq5o1a6patWoJttW+fXtNnDgx3WsGgIxESAKATMbT01OBgYEqVKiQ3nnnHdWtW1c///yzJOny5ct6/fXXlT17dnl7e6tBgwY6dOiQ9bkzZ86Uv7+/fvrpJxUrVkxeXl4KDQ3VqVOnrOu0b99ezZo1s9tnr169FBISkmRNX3/9tapUqaJs2bIpMDBQr776qs6fPy/p35Gc2rVrS5KyZ88ui8Wi9u3bS0p4ul1K61+yZIlKlSolHx8fa2i8n5w5cyowMFBVqlTRmDFjdO7cOW3cuNE60jRnzhzVqlVLXl5e+vbbbxUXF6fhw4crf/788vT0VMWKFbV48WLr9uKfN3v2bNWoUUNeXl4qW7asVq1aZbffVatWqVq1avL09FTevHnVv39/u5G/kJAQdevWTb169VKuXLkUGhqqwoULS5KaN28ui8VifXzv6XYprXH+/PmqXbu2vL29VaFCBa1fvz7ZYzV79my98MIL8vLysrbt27dPb775pooXL642bdpo3759kqSjR4/qiy++0Icffpjotpo0aaItW7boyJEjye4TAB4mhCQAyOSyZMliHX1o3769tmzZop9//lnr16+XMUYNGza0Gxm5ceOGPvzwQ3311Vdau3atoqKi1Lp16weqISYmRiNGjNDOnTv1008/6fjx49YgVKBAAf3444+SpAMHDujMmTP69NNPE91OSusfM2aMvv76a61evVonT55U3759Hao3S5YskuxHbfr376+ePXtq3759Cg0N1aeffqqxY8dqzJgx2rVrl0JDQ/Xiiy/ahTZJevfdd9WnTx9t375d1atXV5MmTXTx4kVJ0t9//62GDRuqatWq2rlzp6ZNm6YvvvhCH3zwgd02Zs2aJQ8PD61du1bTp0/X5s2bJUkzZszQmTNnrI/vldIaBw0apL59+2rHjh3WkJPcKZp//PGHqlSpYtdWoUIFRURE6O7du1q+fLnKly8vSXr77bc1evToJEcECxYsqICAAP3xxx9J7g8AHjoGAJBptGvXzjRt2tQYY0xcXJyJiIgwnp6epm/fvubgwYNGklm7dq11/X/++cdkyZLF/PDDD8YYY2bMmGEkmQ0bNljX2bdvn5FkNm7cmGAf8Xr27Glq1aplfVyrVi3Ts2fPJOvcvHmzkWSuXr1qjDFm5cqVRpK5fPmy3Xq223Gk/sOHD1vXmTJligkICEiylmPHjhlJZvv27cYYYy5fvmyaN29ufHx8zNmzZ63LJ0yYYPe8oKAg8+GHH9q1Va1a1XTp0sVuu6NGjbIuj4mJMfnz5zcff/yxMcaYgQMHmhIlSpi4uDi7en18fExsbKz1GFSqVClB3ZLMggUL7NqGDh1qKlSo4HCN//vf/6zL9+zZYySZffv2JXnM/Pz8zFdffWXXtnv3bvPcc8+ZggULmjZt2pgrV66Yr776yjRt2tT89ddfpl69eqZIkSJm0KBBCbZXqVIlEx4enuT+AOBhw0gSAGQyixYtko+Pj7y8vNSgQQO98sorCg8P1759++Tm5qannnrKum7OnDlVokQJ66lRkuTm5qaqVataH5csWVL+/v526zhq69atatKkiQoWLKhs2bKpVq1akqSTJ0+meBsprd/b21tFihSxPs6bN6/11L7k1KhRQz4+PsqePbt27typOXPmKCAgwLrcduQkOjpap0+fVs2aNe22UbNmzQTHqXr16tZ/u7m5qUqVKtZ19u3bp+rVq8tisdht49q1a/rrr7+sbZUrV75v/fdypMb4UR/p3+MlKdljdvPmTbtT7SSpTJkyWrVqlU6cOKHvvvtOMTExGjp0qCZPnqzu3burRo0a2rlzp+bPn69ffvnF7rlZsmTRjRs3HH6NAJBZEZIAIJOpXbu2duzYoUOHDunmzZuaNWuWsmbNmmbbd3FxkTHGri25iQyuX7+u0NBQ+fr66ttvv9XmzZu1YMECSclPQpBa7u7udo8tFkuCehMzZ84c7dy5U5cvX9aRI0fUsGFDu+VpeQwdld77tj1m8YEtuWm5c+XKpcuXLye7zbCwMPXq1Uv58+dXZGSkWrVqpaxZs6pRo0aKjIy0W/fSpUvKnTt36l8AAGQyhCQAyGSyZs2qokWLqmDBgnJzc7O2lypVSnfv3tXGjRutbRcvXtSBAwdUunRpa9vdu3e1ZcsW6+MDBw4oKipKpUqVkiTlzp07wUQIO3bsSLKe/fv36+LFixo1apSeffZZlSxZMsEohYeHhyQle8+dlNafWgUKFFCRIkXk7+9/33V9fX0VFBSktWvX2rWvXbs2QS0bNmyw/vvu3bvaunWr9ViWKlXKem2V7TayZcum/PnzJ1uDu7t7ssfLkRodValSJe3duzfJ5cuXL9e+ffvUrVs3Sf++r/FBOiYmxq7uW7du6ciRI6pUqdID1QQAmQkhCQAeEsWKFVPTpk315ptvas2aNdq5c6dee+015cuXT02bNrWu5+7uru7du2vjxo3aunWr2rdvr6effto6ffPzzz+vLVu26KuvvtKhQ4c0dOhQ7d69O8n9FixYUB4eHpo0aZKOHj2qn3/+OcG9jwoVKiSLxaJFixbpwoULunbtWqrrzyjvvvuuPv74Y82ZM0cHDhxQ//79tWPHDvXs2dNuvSlTpmjBggXav3+/unbtqsuXL6tjx46SpC5duujUqVPq3r279u/fr4ULF2ro0KEKCwuTi0vy/8UWLlxYy5cv19mzZ5Mc1UlpjY4KDQ3VmjVrEl1269YtdevWTZ9//rn1NdSsWVNTpkzRzp079eOPP9qdArhhwwZ5enranZYIAA87QhIAPERmzJihypUrq3HjxqpevbqMMfrtt9/sTrfy9vbWe++9p1dffVU1a9aUj4+P5syZY10eGhqqwYMHq1+/fqpataquXr2q119/Pcl95s6dWzNnztTcuXNVunRpjRo1SmPGjLFbJ1++fBo2bJj69++vgIAA6whEaurPKD169FBYWJj69OmjcuXKafHixfr5559VrFgxu/VGjRqlUaNGqUKFClqzZo1+/vln5cqVS9K/r/u3337Tpk2bVKFCBb399tvq1KmT3n///fvuf+zYsYqIiFCBAgWSHIVJaY2Oatu2rfbs2aMDBw4kWDZs2DA1atTIbiryiRMnaseOHXruuefUpEkTu/srff/992rbtq28vb0fqCYAyEwsJiUnegMAHgozZ85Ur169kryJKlLu+PHjCg4O1vbt2+0Cw6Pi3XffVXR0tD777LNUb+Off/5RiRIltGXLFgUHB6dhdQDgXIwkAQDwGBo0aJAKFSqU7AQP93P8+HFNnTqVgATgkeN2/1UAAMCjxt/fXwMHDnygbVSpUiXBTWkB4FHA6XYAAAAAYIPT7QAAAADABiEJAAAAAGwQkgAAAADABiEJAAAAAGwQkgAAAADABiEJAAAAAGwQkgAAAADABiEJAAAAAGz8P33Cipj6wlQzAAAAAElFTkSuQmCC"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Final answer for question: Please draw the distribution of urban and rural population proportions in 2023 and 2030 for all the countries in the table, and summarize the trends.\n",
      "Based on the analysis of the urban-rural population csv file, the distribution of urban and rural population proportions in 2023 and 2030 has been visualized using histograms. The trends observed indicate that, on average, the urban population proportion has increased by 2.29% between 2023 and 2030, while the rural population proportion has correspondingly decreased by -2.29%. This suggests a continuing shift from rural to urban living patterns globally.\n",
      "====================================================\n",
      "Question: Compare the average growth rate of urbanized population in 'Colombia,Luxembourg and Macao' and draw a bar chart to tell me which country has the fastest growing proportion of urban population\n",
      "Try 1 times\n",
      "====================================================\n",
      "\n",
      "\n",
      "traceback: An error occurred: unexpected character after line continuation character (<string>, line 25)\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "<string>:13: SettingWithCopyWarning: \n",
      "A value is trying to be set on a copy of a slice from a DataFrame.\n",
      "Try using .loc[row_indexer,col_indexer] = value instead\n",
      "\n",
      "See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n"
     ]
    },
    {
     "data": {
      "text/plain": "<Figure size 640x480 with 1 Axes>",
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkgAAAIPCAYAAACIQyF7AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8g+/7EAAAACXBIWXMAAA9hAAAPYQGoP6dpAABbt0lEQVR4nO3deVxUZf//8feAsriAuIEYCii5oWIuiBtaFKVmlJWat3vaqhZqXzUTNe9c7jRzKbO63cIl09Q0LURbJXfNPddcwRVQVFQ4vz/8MXczoDEGMyiv5+MxDz3Xuc6ZzxkGeHOd65wxGYZhCAAAAGZOji4AAACgoCEgAQAAWCEgAQAAWCEgAQAAWCEgAQAAWCEgAQAAWCEgAQAAWCEgAQAAWCEgAQAAWCEgAZC/v7/atm3r6DLuKS1btlTLli3zdJ8jRoyQyWTK030WJlmv37lz5xxdCu4DBCQUaB999JFMJpNCQ0MdXUqBYzKZ9Prrr+e47quvvpLJZNIPP/xg36LyyKxZs2QymcwPNzc3Pfjgg3r99deVlJTk6PL+kStXrmjEiBEF8muTnp6uKVOmqFmzZvLy8pKLi4t8fX3Vrl07zZ8/XxkZGY4uUZL03nvvaenSpXm+3+7du1u871xdXfXggw9q+PDhunbt2l3tc8+ePRoxYoSOHj2at8Ui3xGQUKDFxsbK399fGzdu1MGDBx1dDuxs1KhRmjt3rqZOnaomTZro448/VlhYmK5cueLo0u7alStXNHLkyBwD0rBhw3T16lX7FyXp7Nmzatq0qfr166cSJUpo2LBh+uSTT9S3b1+lpaXphRde0HvvveeQ2qzlV0CSJFdXV82dO1dz587VxIkT5e/vr3fffVe9evW6q/3t2bNHI0eOJCDdg4o4ugDgdo4cOaL169dryZIleumllxQbG6uYmBi71pCZmanr16/Lzc3Nrs9rL1euXFGxYsUcXcZtPfHEE2rQoIEk6cUXX1SZMmU0ceJELVu2TJ06dXJwdXmvSJEiKlLEMT+Wu3Tpom3btmnx4sV65plnLNYNGTJEmzdv1v79+++4j2vXrsnFxUVOTvfu395FihTRv/71L/Pyq6++qiZNmmj+/PmaOHGivL29HVgd7OnefRfjvhcbGysvLy+1adNGzz77rGJjY83rbty4odKlS6tHjx7ZtktNTZWbm5sGDhxobktPT1dMTIyqVq0qV1dX+fn56a233lJ6errFtlmnrWJjY1WrVi25urpq9erVkqT3339fTZo0UZkyZeTu7q769evrq6++yvb8V69eVb9+/VS2bFmVLFlS7dq108mTJ2UymTRixAiLvidPnlTPnj3l7e0tV1dX1apVS//973//yct2Wy1btlRwcLC2bNmiFi1aqFixYho6dKhFn++//14hISFyc3NTzZo1tWTJEov1Fy5c0MCBA1W7dm2VKFFCHh4eeuKJJ7Rjxw6Lfj/88INMJpO+/PJL/fvf/9YDDzwgNzc3PfLII/9oJPDhhx+WdCs8S9LNmzf17rvvqkqVKnJ1dZW/v7+GDh2a7euaNcfq747vdnOAsk753WkU4Pr16xo+fLjq168vT09PFS9eXM2bN9e6devMfY4ePapy5cpJkkaOHGk+lZP1vsjp+W09xl9++UWNGjWSm5ubAgMDNWfOnDu8orckJCTou+++U58+fbKFoywNGjRQ586dzctZX+MFCxZo2LBhqlixoooVK6bU1FRJ0qJFi1S/fn25u7urbNmy+te//qWTJ0+at1++fLlMJpN+//13c9vixYtlMpmy1VCjRg116NBB0q3v0bS0NM2ePdv8+nXv3t2if3Jysrp3765SpUrJ09NTPXr0uOtRR5PJpGbNmskwDB0+fNjc/ueff+rVV19VtWrV5O7urjJlyui5556zeI/MmjVLzz33nCSpVatW5nr/Onq4atUqNW/eXMWLF1fJkiXVpk0b7d69+65qRd4iIKHAio2N1TPPPCMXFxd16tRJBw4c0KZNmyRJRYsW1dNPP62lS5fq+vXrFtstXbpU6enp6tixo6Rbo0Dt2rXT+++/ryeffFJTpkxRVFSUPvjgA/MP3b9au3at3nzzTXXo0EEffvih/P39JUkffvih6tWrp1GjRum9995TkSJF9Nxzz2nlypUW23fv3l1TpkxR69atNW7cOLm7u6tNmzbZnicpKUmNGzfWmjVr9Prrr+vDDz9U1apV1atXL02aNCkPXsHszp8/ryeeeEIhISGaNGmSWrVqZV534MABdejQQU888YTGjBljPr64uDhzn8OHD2vp0qVq27atJk6cqEGDBmnnzp0KDw/XqVOnsj3f2LFj9fXXX2vgwIEaMmSIfvvtN4tfsrY6dOiQJKlMmTKSbo0qDR8+XA899JA++OADhYeHa8yY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fZDuZdwHqfDhPkgAcO8r8PdBAgAAKKgISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYISAAAAFYcHpCmTZsmf39/ubm5KTQ0VBs3brxj/0WLFql69epyc3NT7dq19e2331qsNwxDw4cPV4UKFeTu7q6IiAgdOHDAos8ff/yhp556SmXLlpWHh4eaNWumdevW5fmxAQCAe5NDA9LChQsVHR2tmJgYbd26VXXr1lVkZKTOnDmTY//169erU6dO6tWrl7Zt26aoqChFRUVp165d5j7jx4/X5MmTNX36dG3YsEHFixdXZGSkrl27Zu7Ttm1b3bx5U2vXrtWWLVtUt25dtW3bVomJifl+zAAAoOAzGYZhOOrJQ0ND1bBhQ02dOlWSlJmZKT8/P/Xt21eDBw/O1r9Dhw5KS0vTihUrzG2NGzdWSEiIpk+fLsMw5OvrqwEDBmjgwIGSpJSUFHl7e2vWrFnq2LGjzp07p3Llyumnn35S8+bNJUmXLl2Sh4eH4uLiFBERkavaU1NT5enpqZSUFHl4ePzTlyLf+A9e6egS7htHx7ZxdAkAgH8ot7+/HTaCdP36dW3ZssUikDg5OSkiIkIJCQk5bpOQkJAtwERGRpr7HzlyRImJiRZ9PD09FRoaau5TpkwZVatWTXPmzFFaWppu3rypTz75ROXLl1f9+vVvW296erpSU1MtHgAA4P7ksIB07tw5ZWRkyNvb26Ld29v7tqe6EhMT79g/69879TGZTFqzZo22bdumkiVLys3NTRMnTtTq1avl5eV123rHjBkjT09P88PPz8+2AwYAAPcMh0/StjfDMPTaa6+pfPny+vnnn7Vx40ZFRUXpySef1OnTp2+73ZAhQ5SSkmJ+HD9+3I5VAwAAe3JYQCpbtqycnZ2VlJRk0Z6UlCQfH58ct/Hx8blj/6x/79Rn7dq1WrFihRYsWKCmTZvqoYce0kcffSR3d3fNnj37tvW6urrKw8PD4gEAAO5PDgtILi4uql+/vuLj481tmZmZio+PV1hYWI7bhIWFWfSXpLi4OHP/gIAA+fj4WPRJTU3Vhg0bzH2uXLki6dZ8p79ycnJSZmbmPz8wAABwzyviyCePjo5Wt27d1KBBAzVq1EiTJk1SWlqaevToIUnq2rWrKlasqDFjxkiS+vfvr/DwcE2YMEFt2rTRggULtHnzZs2YMUPSrflFb7zxhkaPHq2goCAFBATonXfeka+vr6KioiTdClleXl7q1q2bhg8fLnd3d3366ac6cuSI2rThKiUAAODggNShQwedPXtWw4cPV2JiokJCQrR69WrzJOtjx45ZjPQ0adJE8+bN07BhwzR06FAFBQVp6dKlCg4ONvd56623lJaWpj59+ig5OVnNmjXT6tWr5ebmJunWqb3Vq1fr7bff1sMPP6wbN26oVq1aWrZsmerWrWvfFwAAABRIDr0P0r2M+yAVPtwHCQDufQX+PkgAAAAFFQEJAADACgEJAADACgEJAADACgEJAADACgEJAADACgEJAADACgEJAADACgEJAADACgEJAADACgEJAADACgEJAADACgEJAADACgEJAADAyl0FpEOHDmnYsGHq1KmTzpw5I0latWqVdu/enafFAQAAOILNAenHH39U7dq1tWHDBi1ZskSXL1+WJO3YsUMxMTF5XiAAAIC92RyQBg8erNGjRysuLk4uLi7m9ocffli//fZbnhYHAADgCDYHpJ07d+rpp5/O1l6+fHmdO3cuT4oCAABwJJsDUqlSpXT69Ols7du2bVPFihXzpCgAAABHsjkgdezYUf/3f/+nxMREmUwmZWZm6tdff9XAgQPVtWvX/KgRAADArmwOSO+9956qV68uPz8/Xb58WTVr1lSLFi3UpEkTDRs2LD9qBAAAsKsitm7g4uKiTz/9VMOHD9fOnTt1+fJl1atXT0FBQflRHwAAgN3ZPII0atQoXblyRX5+fmrdurWef/55BQUF6erVqxo1alR+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WrWqPvzww/yoEQAAwK5smoNkGIZSU1O1YMECnTx50nyZf40aNVS1atV8KRAAAMDebA5IVatW1e7duxUUFEQoAgAA9yWbTrE5OTkpKChI58+fz696AAAAHM7mOUhjx47VoEGDtGvXrvyoBwAAwOFsvg9S165ddeXKFdWtW1cuLi5yd3e3WH/hwoU8Kw4AAMARbA5IkyZNyocyAAAACg6bA1K3bt3yow4AAIACw+aAlGX37t3KyMgwLzs7O6tWrVp5UhQAAIAj5XqS9s8//6yGDRualxs3bqx69eopJCREISEhqlOnjtasWZMvRQIAANhTrgPSRx99pC5duli0rVu3TkeOHNHhw4fVv39/ffzxx3leIAAAgL3lOiBt3rxZDz/8sEXbAw88oMqVK8vf319dunRRQkJCnhcIAABgb7kOSCdOnJCnp6d5efbs2fLx8TEvly5dmhtIAgCA+0KuA1LJkiV16NAh8/IzzzyjYsWKmZePHDkiDw+PvK0OAADAAXIdkEJDQzVnzpzbrp81a5ZCQ0PzpCgAAABHyvVl/tHR0YqIiFCZMmU0aNAglS9fXpJ05swZjRs3Tl988YW+//77fCsUAADAXnIdkFq1aqUpU6bozTff1MSJE+Xh4SGTyaSUlBQVKVJEkyZNyjaJGwAA4F5k040iX331VT355JP66quvdODAAUlSUFCQnn32Wfn5+eVLgQAAAPZm8520/fz89Oabb+ZHLQAAAAVCridpAwAAFBYEJAAAACsEJAAAACsEJAAAACt3FZCSk5P12WefaciQIbpw4YIkaevWrTp58mSeFgcAAOAINl/F9vvvvysiIkKenp46evSoevfurdKlS2vJkiU6duzYHe+2DQAAcC+weQQpOjpa3bt314EDB+Tm5mZub926tX766ac8LQ4AAMARbA5ImzZt0ksvvZStvWLFikpMTMyTogAAABzJ5oDk6uqq1NTUbO1//PGHypUrlydFAQAAOJLNAaldu3YaNWqUbty4IUkymUw6duyY/u///k/t27fP8wIBAADszeaANGHCBF2+fFnly5fX1atXFR4erqpVq6pkyZL697//nR81AgAA2JXNV7F5enoqLi5Ov/zyi37//XddvnxZDz30kCIiIvKjPgAAALuzOSBladasmZo1a5aXtQAAABQINgekyZMn59huMpnk5uamqlWrqkWLFnJ2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pKxf11nzNvlZmb+4ThB217lzZxUtWlTz5s3LcZI24AgeHh46duxYtoB0/PhxlSxZ0kFVoTDr37+/AgICFB8fr4CAAG3cuFHnz5/XgAED9P777zu6vPseAQl2t2vXLm3btk3VqlVzdCmAWYcOHdSrVy+9//77atKkiSTp119/1aBBg9SpUycHV4fCKCEhQWvXrlXZsmXl5OQkJycnNWvWTGPGjFG/fv20bds2R5d4XyMgwe4aNGig48ePE5BQoLz//vsymUzq2rWrbt68KUkqWrSoXnnlFY0dO9bB1aEwysjIMI9eli1bVqdOnVK1atVUuXJl7d+/38HV3f8ISLC7vn37qn///ho0aJBq166dbZJ2nTp1HFQZCjMXFxd9+OGHGjNmjA4dOiRJqlKliooVK+bgylBYBQcHa8eOHQoICFBoaKjGjx8vFxcXzZgxI9vdtZH3mKQNu3NycsrWljUBkUnaKAiOHz8uiQ9RhmN99913SktL0zPPPKMDBw7oySef1B9//KEyZcpowYIFeuSRRxxd4n2NgAS7+/PPP++4vnLlynaqBPifmzdvauTIkZo8ebIuX74sSSpRooT69u2rmJgYbsyHAuHChQvZPjcQ+YNTbLA7AhAKor59+2rJkiUaP368wsLCJN2aJDtixAidP39eH3/8sYMrRGHRs2fPXPX773//m8+VFG6MIMEhDh06pEmTJpk/0qFmzZrq37+/qlSp4uDKUFh5enpqwYIFeuKJJyzav/32W3Xq1EkpKSkOqgyFjZOTkypXrqx69erpTr+iv/76aztWVfgwggS7++6779SuXTuFhISoadOmkm5dTl2rVi198803evTRRx1cIQojV1dX+fv7Z2sPCAiQi4uL/QtCofXKK69o/vz5OnLkiHr06KF//etfKl26tKPLKnQYQYLd1atXT5GRkdkunR48eLC+//77bHfYBuxh1KhR2rdvn2bOnClXV1dJUnp6unr16qWgoCDFxMQ4uEIUJunp6VqyZIn++9//av369WrTpo169eqlxx57jPlHdkJAgt25ublp586dCgoKsmj/448/VKdOHV27ds1BlaGweeaZZyyW16xZI1dXV9WtW1eStGPHDl2/fl2PPPKIlixZ4ogSAf3555+aNWuW5syZo5s3b2r37t0qUaKEo8u673GKDXZXrlw5bd++PVtA2r59u8qXL++g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"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Try 2 times\n",
      "====================================================\n",
      "\n",
      "Final answer for question: Compare the average growth rate of urbanized population in 'Colombia,Luxembourg and Macao' and draw a bar chart to tell me which country has the fastest growing proportion of urban population\n",
      "The executable Python code has been executed successfully. The bar chart showing the average growth rate of the urbanized population in Colombia, Luxembourg, and Macao has been displayed. The country with the fastest growing proportion of urban population can be determined by analyzing the bar chart.\n"
     ]
    }
   ],
   "source": [
    "questions = [\n",
    "    \"From 1972 to 2048, did more people in Russia live in cities or in rural areas? What is the rate of growth or decline, and when is the fastest growth or decline?\",\n",
    "    \"Please draw the distribution of urban and rural population proportions in 2023 and 2030 for all the countries in the table, and summarize the trends.\",\n",
    "    \"Compare the average growth rate of urbanized population in 'Colombia,Luxembourg and Macao' and draw a bar chart to tell me which country has the fastest growing proportion of urban population\"\n",
    "]\n",
    "\n",
    "for question in questions:\n",
    "    print(\"====================================================\")\n",
    "    print(\"Question:\", question)\n",
    "    messages = [\n",
    "        {\n",
    "            \"role\": \"system\",\n",
    "            \"content\": sys_prompt\n",
    "        },\n",
    "        {\n",
    "            \"role\": \"user\",\n",
    "            \"content\": question\n",
    "        }\n",
    "    ]\n",
    "\n",
    "    number_try = 0\n",
    "    while True:\n",
    "        response = client.chat.completions.create(\n",
    "            model='glm-4',\n",
    "            messages=messages,\n",
    "            top_p=0.1,\n",
    "            tools=tools,\n",
    "            temperature=0.1,\n",
    "            max_tokens=2000,\n",
    "        )\n",
    "\n",
    "        if response.choices[0].finish_reason == \"stop\":\n",
    "            print(\"Final answer for question:\", question)\n",
    "            print(response.choices[0].message.content)\n",
    "            break\n",
    "        elif response.choices[0].finish_reason == \"tool_calls\":\n",
    "            number_try += 1\n",
    "            if number_try > 10:\n",
    "                print(\"Too many attempts, automatic stop for question:\", question)\n",
    "                break\n",
    "            else:\n",
    "                print(f\"Try {number_try} times\")\n",
    "                print(\"====================================================\\n\\n\")\n",
    "\n",
    "            messages.append(\n",
    "                {\n",
    "                    \"role\": response.choices[0].message.role,\n",
    "                    \"tool_calls\": [\n",
    "                        {\n",
    "                            \"id\": response.choices[0].message.tool_calls[0].id,\n",
    "                            \"type\": \"function\",\n",
    "                            \"index\": 0,\n",
    "                            \"function\": {\n",
    "                                \"arguments\": response.choices[0].message.tool_calls[0].function.arguments,\n",
    "                                \"name\": response.choices[0].message.tool_calls[0].function.name\n",
    "                            }\n",
    "                        }\n",
    "                    ]\n",
    "\n",
    "                }\n",
    "            )\n",
    "            extract_function_and_execute(llm_output=response, messages=messages)\n"
   ],
   "metadata": {
    "collapsed": false,
    "ExecuteTime": {
     "end_time": "2024-02-06T08:12:05.733806Z",
     "start_time": "2024-02-06T08:10:54.991217Z"
    }
   },
   "id": "957ff72a2b7a197"
  },
  {
   "cell_type": "markdown",
   "source": [
    "## Conclusion\n",
    "模型能在一定程度上完成简单的数据分析任务，虽然完成复杂任务具有一定的困难，但是通过多次尝试，也能获得满意的结果。\n",
    "你可以在更多的场合中使用GLM-4模型对数据分析工作进行深度的探索。\n",
    "\n",
    "The model can complete simple data analysis tasks to a certain extent. Although it is difficult to complete complex tasks, satisfactory results can be obtained through multiple attempts.\n",
    "You can use the GLM-4 model on more occasions to conduct in-depth exploration of data analysis work."
   ],
   "metadata": {
    "collapsed": false
   },
   "id": "61c44798a7b006ca"
  },
  {
   "cell_type": "markdown",
   "source": [],
   "metadata": {
    "collapsed": false
   },
   "id": "281e46faf9bbea4e"
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
